www.jpct.net

jPCT-AE - a 3d engine for Android => Support => Topic started by: CultiMAN on February 23, 2012, 10:27:52 pm

Title: [Solved] changing Texture UV Map on Polygon at runtime
Post by: CultiMAN on February 23, 2012, 10:27:52 pm
Hi

I have a strange problem with my project.
I have a method on my cube class that changes the UV mapping of a textureatlas for one of the sides of the cube.
The method uses model.getPolygonManager().setPolygonTexture(...) to change the UV mapping of the polygons in question - and i know it works fine.
My problem is that i only works in my initial onSurfaceChanged (when game starts). If i call the same method when scene is running/updating/drawing - it won't do the update of the texture.

I know the method is being called while the game is running (debugger confirms)

Do i need to call somekind of update method on my world like : world.RefreshAllUVMappings() ?

Hope you can help.

/Kristian, Denmark
Title: Re: changing Texture on Polygon at runtime
Post by: EgonOlsen on February 23, 2012, 10:42:27 pm
You want to change the u/v-mapping or the texture? That's a pretty huge difference... ???
Title: Re: changing Texture on Polygon at runtime
Post by: CultiMAN on February 23, 2012, 10:48:40 pm
the UV mapping
Title: Re: changing Texture on Polygon at runtime
Post by: EgonOlsen on February 23, 2012, 11:26:34 pm
In that case, you have to explicitly compile the object using Object3D.compile(true, false); and you have to call Object3D.touch(); after adjusting the uv-mapping.
Title: Re: changing Texture on Polygon at runtime
Post by: CultiMAN on February 24, 2012, 02:18:56 pm
Thanks Egon! That did the trick! Groovy. Great job on a Great engine! Hats off to you.