• Advertisement
Sign in to follow this  

Problems rendering texture on a mesh

This topic is 1857 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi,

my problem is that for some reason my texture gets twisted from two sides of a cube. I load a cube from .OBJ file and the data seems to be valid. I have tested .OBJ file with another application, wich renders the cube correctly. With both applications I get same result after loading the OBJ-file, but my application doesn't render it correctly. Mysterious part is that only two sides of the cube is rendered incorrectly but four other sides looks ok. I have attached pictures from cube as well.

Work order of loading and setuping the mesh:

1. Get position data and texture position data from OBJ-file

2. Get indices of vertices

3. Setup vertex and index buffers

4. Load and setup texture

Any ideas what might cause this error?

Share this post


Link to post
Share on other sites
Advertisement

at my case mostly it occur about vertex declarion about buffer and shader ...

 

of vertex buffer's structure..

 

and you must use PIX for this kind of problem..

 

It's in DX sdk

Share this post


Link to post
Share on other sites

Here is the mesh what I try to load:

 

# 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware

# File Created: 16.12.2012 18:16:25

 

mtllib MyNewRock.mtl

 

#

# object Box001

#

 

v -20.6063 0.0000 -0.0150

v -20.6063 0.0000 -9.1689

v -7.4212 0.0000 -9.1689

v -7.4212 0.0000 -0.0150

v -20.6063 10.1923 -0.0150

v -7.4212 10.1923 -0.0150

v -7.4212 10.1923 -9.1689

v -20.6063 10.1923 -9.1689

# 8 vertices

 

vn 0.0000 -1.0000 -0.0000

vn 0.0000 1.0000 -0.0000

vn 0.0000 0.0000 1.0000

vn 1.0000 0.0000 -0.0000

vn 0.0000 0.0000 -1.0000

vn -1.0000 0.0000 -0.0000

# 6 vertex normals

 

vt 1.0000 0.0000 0.0000

vt 1.0000 1.0000 0.0000

vt 0.0000 1.0000 0.0000

vt 0.0000 0.0000 0.0000

# 4 texture coords

 

g Box001

usemtl 01___Default

 

s 2

f 1/1/1 2/2/1 3/3/1

f 3/3/1 4/4/1 1/1/1

s 4

f 5/4/2 6/1/2 7/2/2

f 7/2/2 8/3/2 5/4/2

s 8

f 1/4/3 4/1/3 6/2/3

f 6/2/3 5/3/3 1/4/3

s 16

f 4/4/4 3/1/4 7/2/4

f 7/2/4 6/3/4 4/4/4

s 32

f 3/4/5 2/1/5 8/2/5

f 8/2/5 7/3/5 3/4/5

s 64

f 2/4/6 1/1/6 5/2/6

f 5/2/6 8/3/6 2/4/6

# 12 faces

 

And thanks for suggesting PIX debugging tool. I have to look how to use it.

Share this post


Link to post
Share on other sites

I added a debug photo and it seems that texture coordinates are actually wrong. Some of those coordinates don't match.

Share this post


Link to post
Share on other sites
When I delete discontinuous uv map values, the box looks like the above pictures (with the two opposite sides along the z-axis distorted). You'll have to duplicate/unweld vertices with identical positions, but individual (per face) uv coordinates. That is, faces that refer to the same vertex, but have a value on a different uv chart, need to be assigned a copy of the vertex with their own specific uvs.

Share this post


Link to post
Share on other sites
Thanks eppo. I noticed the problem. I assigned correct position data but wrong tu tv coordinates so I have to fix my algorithm. I think this will solve my problem.

Share this post


Link to post
Share on other sites

Thanks eppo. I noticed the problem. Position data was correct but I loaded wrong tu and tv coordinate so I have to fix my algorithm. I think this will fix my problem.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement