Page: 7
Please Log In or Register

MipMap Textures with Anisotropy in OpenFrameworks 008

If you have worked with meshes and textures in OpenGL, than you probably have experienced aliasing on textures bound to meshes. Unfortunately OpenFrameworks 008 only supports mip mapping of textures that have compression on them. I usually work with straight jpgs or pngs for my textures, so that is not an option. Recently some friends over at Incredible Machines brought up the issue, so I thought it might be useful to post. Both for other people and myself.

Below is an example of a texture without mip mapping. Notice the jaggedness on the checkered image. It is more apparent when there is a sharp angle from the vertex to the camera.
Regular ofTexture

Now here is the mip mapped version of the texture. Notice how it appears more anti-aliased. (Click to enlarge.)
Mip Mapped ofTexture

Anisotropy limits how much “aliasing” is applied between the mip maps. A value of 1 will do nothing, as the value increases so does the appearance of anti-aliasing.
I wrote a convenience function that is based on ofTexture, but includes the mip map and anisotropy functions.

MORE INFO


Change Main Menu in OSX and OpenFrameworks

Main Menu

Attached is a project using Openframeworks 008 that allows you to change the menu items in the application for OSX using GLFW.

MainMenuExample

 

 

 


Watermelon Watercolor Phone Case

Phone Case Outside

iPhone5_Template_1200x1200

Phone Wallpaper 

iPhone5_Template_screen

 

Download Wallpaper

iPhone 5 (  640 x 1136 )

iPhone 4 ( 640 x 960 )

Samsung Galaxy 4 ( 1080 x 1920 )

Samsun Galaxy III (720 x 1280 )

iPad 2 (768 x 1024 )

iPad / 3 / 4 / Air (1536 x 1024 )


Kinected Portraits – Process

This post describes the process involved for the Kinected Portrait Series.

A custom OpenFrameworks application captured depth information using the Microsoft Kinect. The depth information was calibrated to a color image that was also captured by the kinect. Below is the raw color and depth information.

_kinectImage

Kinect color image

kinectDepth

Kinect Depth Data

 

 

 

 

 

 

 

 

 

A series of meshes were generated with incremental triangle size  from 1 – 19. Below demonstrates the difference in spacing between the different generated meshes, 1 being the tightest and 19 being the loosest.

mesh_spacing

Various mesh sizes were chosen that allow smooth transitions between tighter meshes and looser meshes. Level 2, 4 and 8 were used to create a composite.

meshes 2 - 4 - 8

Mesh sizes 2, 4 and 8 from left to right.

The meshes were placed onto the captured color image in photoshop. The tighter meshes denoted the darker areas and the looser ones were utilized for the lighter areas, creating a ‘mesh hatching’ style. Originally the OpenFrameworks application algorithmically blended the meshes based on the lightness of the image, but the process by hand provided a much more pleasing result.

composite_w_mesh

Color Image with Mesh Composite Overlay in Photoshop

Kinected Portrait - Ryan - Mesh Composite Print

Mesh composite print out on tracing paper

MORE INFO


Weather Worlds Installation at TIFF

Glad to have worked on this project with Design I/O. Read more about it here.


Older Posts
Newer Posts