Calibrateprojector no x64 - assimp x86 wont load mesh

Hey Guys,

I have a x64 dx11 project and i am trying to use calibrateprojector node by elliot for projection mapping.

The issue is very simple, my .obj file wont load in assimp x86, no problem in x64. But the is no x64 image pack.

I thought id ask if anyone has an idea before trying to jiggabazigga convert my .obj file.

vvvv 34_1 both x84 and x64 did not try new version yet. Will do so later.

Just tried Assimp x86 with latest VVVV,DX11 with my .obj file and it does not work.
ive tried to sing to it but it only reacted with a sarcastic slow clap and NIL
Both for Geometry File Assimp and SceneFile Assimp.

*edit

Converted the .OBJ file to .OBJ and .DAE with Meshlab, sometimes this does the trick for me, but its still only working with x64, ist there a Mesh Resolution Limit for x84? 600.000 Verts 1,2 mio faces…

Hello, you have to make sure that your OBJ file have UV coordinates.

ye if u use 3d scan u can go out of memory, check amount of mem u use in 64 in taskmanger if u areclose to two gigs vvvv wont load unless u 64

thanks for your answers

mhh its only 700mb in use, yes it has UV’s :/

i will try some more jiggabazigga conversion

what is it loads? What shader says? Instance not set to an reference?

Well… Assimp will “pretend” it not sending NIL if it has opened a functioning mesh before trying to open a mesh that does not work. - it sort of freezes and wont work after failing to open a not working mesh untill I restart VVVV.

tty: Does this error suggest a Scaling error? ( mesh is huge in scale )

00:02:50 ERR : Exception caused by node during update :/73/0/37/90/44
00:02:50 ERR : SlimDX.Direct3D11.Direct3D11Exception in SlimDX: E_INVALIDARG: An invalid parameter was passed to the returning function (-2147024809)

Stacktrace:
   at SlimDX.Result.Throw[T](Object dataKey, Object dataValue)
   at SlimDX.Result.Record[T](Int32 hr, Boolean failed, Object dataKey, Object dataValue)
   at SlimDX.Direct3D11.Buffer.Build(Device device, DataStream data, Int32 sizeInBytes, ResourceUsage usage, BindFlags bindFlags, CpuAccessFlags accessFlags, ResourceOptionFlags optionFlags, Int32 structureByteStride)
   at SlimDX.Direct3D11.Buffer..ctor(Device device, DataStream data, BufferDescription description)
   at VVVV.DX11.Nodes.Assimp.AssimpMeshNode.Update(IPluginIO pin, DX11RenderContext context)
   at VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node)

00:02:50  -  : Stack Trace
00:02:50  -  :    at SlimDX.Result.Throw[T](Object dataKey, Object dataValue)
   at SlimDX.Result.Record[T](Int32 hr, Boolean failed, Object dataKey, Object dataValue)
   at SlimDX.Direct3D11.Buffer.Build(Device device, DataStream data, Int32 sizeInBytes, ResourceUsage usage, BindFlags bindFlags, CpuAccessFlags accessFlags, ResourceOptionFlags optionFlags, Int32 structureByteStride)
   at SlimDX.Direct3D11.Buffer..ctor(Device device, DataStream data, BufferDescription description)
   at VVVV.DX11.Nodes.Assimp.AssimpMeshNode.Update(IPluginIO pin, DX11RenderContext context)
   at VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node)

there are imagepack builds for x64 floating around, however I’m not sure that calibratecamera is working, i never needed that recently, let me fetch what I’m using…

i couldn’t find it, I’ll upload it to Google Drive tomorrow

thx :)… no text …

if it’s one subset u can try to split it in few parts.

Thx for the tip, i will try to create subsets but its a pointcloud generated mesh without topology. If nothing works i will try to reduce it, but This will destroy my UV

Ok so here is what i have learned:

  • Maximum face count is about 300.000 for a mesh to load in Assimp x84 ( no subsets)
  • Reduce your mesh even lower, you can keep the High-Res Version for your final Output. ( maintain same Scale and Axis orientation for Low and High Resolution Versions of your Mesh) For several type of Meshes a One-sided Version may work better for calibration. ( it seems to look up vertices and may, by accident, select vertices that are invisible to you and ruin your calibration)
  • If you break your mesh ( holes etc ) while reducing its resolution, it will not effect the quality of your calibration negatively. While reducing your mesh focus on lower Face/Vert-Count while maintaining details and Quality on important parts of the mesh -> Silhoutte / Outline / Texture Boundries
  • Calibration will not work if any vertices ( any part of your mesh ) is below 0 on the Y-Axis ( makes sense but for terrain this may happen unnoticed )
  • Remember to Scale and Rotate your Mesh within the Help files grid for scale and changing your rotation according to your Projection output. ( same issue, calibration may not work.)