Calibrating an inkjet printer using a scanner
In an ideal world, if you scan a photo and then print it, you could expect it to look the same. Of course, that’s not the case with consumer hardware….
In an ideal world, if you scan a photo and then print it, you could expect it to look the same. Of course, that’s not the case with consumer hardware….
After trying out a USB isolator to fix the audio noise that was caused by a ground loop, I continued my search for a high quality plug-and-play solution to forward…
While benchmarking a custom concurrent functor queue against standard library containers, I noticed something that I didn’t expect. The common concern about the standard containers, especially ones such as std::list,…
Using 3ds Max 2010 under Windows 10, when panning the viewport, the mouse cursor frequently glitches away and the viewport pans off to nowhere. I worked around the issue by…
How to implement bayer dithering for reducing an image to a lower bits per color format. This article explains bayer dithering in a practical manner. If you really want a…
To try out the silicone and resin I bought a while ago, I made a recast of a Nendoroid head. Recasting of existing figure parts is often done by people…
I created this figure for the Tsunacon 2013 convention in the Netherlands of their mascot character. This is the third year I make one for this convention. Trying out some…
Let’s see what we can do now. INode *node = scene.container()->scene()->rootNode()->find(ucstring(“TR_HOF_civil01_gilet”)); nlassert(node); exportObj(“tr_hof_civil01_gilet.obj”, node->getReference(1)->getReference(1)); Plain easy, right?
At this point, you should start to familiarize yourself a bit with the publicly available 3ds Max API documentation. The contents of the file map practically 1:1 with how the…
The most interesting part of this file is, evidently, the Scene. Opening it up in the chunk parser, it begins like follows, and goes on for a few ten thousands…
Recent Comments