rose valley

June 3rd, 2012 . 0 comments

rose valley

uchisar

May 27th, 2012 . 0 comments

uchisar by mattebb

from above

May 20th, 2012 . 0 comments

from above by mattebb

cappadocia

morning

May 19th, 2012 . 0 comments

morning by mattebb

cappadocia

valley

May 4th, 2012 . 0 comments

valley by mattebb

cappadocia

road

April 29th, 2012 . 0 comments

road

bridge

April 25th, 2012 . 0 comments

bridge

3Delight/Blender 0.7.5

April 25th, 2012 . 9 comments

It’s been a while, but the 3Delight/blender exporter has been getting progressively more out of date, with changes in Blender’s python API leaving version 0.7.0 broken in current releases. Blender 2.63 will also include the new bmesh system, which is incompatible with old versions. I’ve updated the addon to fix these issues, and add a few more little things. This version now requires Blender 2.63 – until it’s released, you can use a pre-release version. As always, I’ve tried to test it on the main OSes, but if you find any issues, please let me know.

Update: There was a last minute Blender python API change which renders v0.7.5 incompatible with the Blender 2.63 release. The addon has been fixed and updated to v0.7.6.

Download the addon here: render_3delight_0.7.6.zip

Changes include:

  • Enabled editable output paths, including RIB file export, shadow maps, and point clouds. These path properties support using environment variables, or other blender data variables that are built in to the exporter. Environment variables can be read from outside blender, or default environment variables can be edited from within the Environment Variables panel in Render Properties.
    More info at: http://mattebb.com/3delightblender/documentation/
  • Added option to either both export RIB and render interactively, or just export the RIB (better for render farms)
  • Added choose of Display Drivers – currently accepted are ‘auto’ (integrated in blender image editor), idisplay, and tiff.
  • Added access to Hider settings. Using idisplay with the raytrace hider allows progressive rendering.

mt nemrut

April 18th, 2012 . 0 comments

mt nemrut

en route mt nemrut

April 18th, 2012 . 0 comments

en route mt nemrut by mattebb

clouds

April 13th, 2012 . 0 comments

clouds by mattebb

mesopotamian plains, mardin

dawn

April 11th, 2012 . 0 comments

dawn by mattebb

mesopotamian plains, mardin

dusk

April 11th, 2012 . 0 comments

dusk by mattebb

mesopotamian plains, mardin

Spherical Harmonics in VOPs

April 11th, 2012 . 3 comments

Spherical Harmonics is a method for efficiently representing values that vary based on angle – often, lighting. It’s been in use for a long time in computer graphics, and with a google search you can find plenty of interesting information explaining the subject, in particular this (now a bit old) paper by Robin Green of SCEA – Spherical Harmonic Lighting: The Gritty Details. The common use case for spherical harmonics is caching a slow-to-calculate value that varies by angle, storing it as SH coefficient data, then reproducing an approximated version of that original value later on. What makes spherical harmonics useful is that for certain types of things (like diffuse lighting) the amount of data you have to store is quite small, and the value can be reproduced later quite quickly.

I’d previously tinkered with SH a bit in blender, but this time decided to port the code in the above paper to VEX in Houdini, implemented as a couple of VOPs, used to generate and evaluate spherical harmonics as part of a VOP network. I started playing with this idea last year at Dr. D, and still haven’t implemented my original ideas yet after getting sidetracked with these fun examples of things you can do with SH. Maybe soon.

You can download this example file, and the OTL here: houdini_sh_otl_hipnc.v001.zip.

The OTL includes three VOPs:

  • SH Generate
    Stores a single float sample along with its corresponding angle in a set of spherical harmonics coefficients. It’s currently using a 4×4 Matrix type as storage for this because it’s convenient to work with in VOPs/attributes, and because 16 floats will allow you to store up to 4 bands of spherical harmonics, which is enough for many situations involving smooth/diffuse values.
  • SH Evaluate
    Evaluates the value of the input spherical harmonics coefficients at a given lookup angle, as a single float.
  • Cartesian to Spherical
    The SH Generate/SH Evaluate VOPs take input angles in spherical coordinates (Phi/Theta),. This VOP can be used to convert a cartesian vector direction, to spherical coordinates.

The OTL was made in Houdini Apprentice, but probably isn’t difficult to convert to a commercial version. If you find any use for this, or any mistakes, please let me know!

caves

April 8th, 2012 . 0 comments

caves by mattebb

hasankeyf

tigris river

April 6th, 2012 . 0 comments

tigris river by mattebb

hasankeyf