Unsurprisingly it was the OBJ file. Blender 2.57 on OSX 10.6.7 does not seem to export OBJs correctly. My short-term work-around is to import and export the OBJs through Wings3D, which seems to fix Blender. Doing a diff on the two OBJ files, the vertices appear to be in a very different order between the working and non-working files. Thanks for the feedback all.
On Wed, May 18, 2011 at 11:05 AM, Ross Smith <[email protected]> wrote: > I tried with DirectionalLight to no avail. > > I've stripped my code down to a 1-class example that reproduces the > problem. > > Source: > > http://evolutioneer.com/away3d/lit_material_render_error/lit_material_render_error.as > > Example (PNG bitmap is heavy though, takes a while to load): > http://evolutioneer.com/away3d/lit_material_render_error/ > > To recap: > - Loader3D with underlying AssetLibrary is used to load an OBJ file > consisting of 1 mesh and 1 bitmap material > - Once loaded, a PointLight is assigned to the mesh's material > - When the view render()s, a #2007 TypeError is thrown: > > > TypeError: Error #2007: Parameter data must be non-null. > at flash.display3D::VertexBuffer3D/uploadFromVector() > at > away3d.core.base::SubGeometry/getVertexNormalBuffer()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/base/SubGeometry.as:209] > at > away3d.core.base::SubMesh/getVertexNormalBuffer()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/base/SubMesh.as:130] > at > away3d.materials.passes::DefaultScreenPass/render()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/materials/passes/DefaultScreenPass.as:403] > at > away3d.materials::MaterialBase/renderPass()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/materials/MaterialBase.as:342] > at > away3d.core.render::DefaultRenderer/drawRenderables()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/render/DefaultRenderer.as:171] > at > away3d.core.render::DefaultRenderer/draw()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/render/DefaultRenderer.as:100] > at > away3d.core.render::RendererBase/executeRender()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/render/RendererBase.as:318] > at > away3d.core.render::RendererBase/render()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/render/RendererBase.as:299] > at > away3d.core.render::DefaultRenderer/render()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/core/render/DefaultRenderer.as:79] > at > away3d.containers::View3D/render()[/Users/rosssmith/lib/away3d/broomstick_git/away3d-core-broomstick/src/away3d/containers/View3D.as:336] > at > lit_material_render_error/handleEnterFrame()[/Users/rosssmith/prj/flashbuilder/molehill_carnival/src/ > lit_material_render_error.as:106] > > > > On Tue, May 17, 2011 at 5:20 PM, John Brookes <[email protected]>wrote: > >> No Ive used loader3D and assetlibrary with obj +mtl with file texture >> Only difference is Im using directional light >> So maybe... >> > > > > -- > Ross Smith > [email protected] > -- Ross Smith [email protected]
