viewing posts 1-7 of 7
Over the years I've reviewed a lot of iOS code, and one mistake stands out to me by far as the most common mistake made by beginning iOS developers
(even above misuse of auto-release pools). It essentially boils down to a (quite forgivable) lack of understanding of how properties and reference
counting work within Modern Objective-C.
In Objective-C, an instance variable is simply an object member variable whose value is stored uniquely for each instance of the object.
In a similar manner, instance member functions operate on a particular instance of an object, and have access to the object's instance
variables. Interestingly, there is also the notion of a class member function, which must be called without respect to a particular object
instance, and …
Stereo Studio is a lightweight stereo pre-visualization tool that provides a high performance shader driven framework for decoding
and encoding stereo content for all display types. In addition to its functionality as a stereo movie player, this tool also provides
support for motion matching, floating window and stereoscopic calibration adjustments, and collaborative workspaces. At a high level,
the top features of this t…
Over the last several days I've been pouring over the reviews of Avatar, hoping to find one that offered an in depth analysis
of the stereoscopic quality. I haven't found one yet, so I decided to write at least a basic one. Tonight I watched the movie twice
- first using Real-D technology, and second (and immediately after) in IMAX 3D. I expected the Real-D experience to be better due to
the following (perhaps gross) assu…
The Dreamcast has always been one of my favorite consoles. In 2008 I decided to begin writing an emulator that could boot and render
Dreamcast games. Note that this project only sought to implement those components required to render a game, and not necessarily play
it (i.e. limited controller support). After a year of part-time development, I decided to halt work on this project in favor of other
more pressing projects.
<…
The Vision Engine supports a number of different texture space effects including bump mapping and specular mapping. In addition to these, it also supports extruded heightmaps. These heightmaps add extra visual detail
to the geometry, particularly when viewed at fairly wide angles - where normal bump mapping often breaks down.
A crucial aspect of realistically modelling the interactions between light and participating media is subsurface scattering. This process takes into account the subsurface characteristics of absorbed light, with respect to the microfaceted absorptive and reflective properties of a material. The most recognizable visual result of this process is translucency.