Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (636)
Games in Android Showcase (178)
games submitted by our members
Games in WIP (687)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  jogl texture wrapping of complex shape  (Read 673 times)
0 Members and 1 Guest are viewing this topic.
Offline nkl

Innocent Bystander

« Posted 2011-08-05 10:27:42 »

Hi, I've been batting my head against a wall for some time on this topic and am curious if anyone out there can spot a mistake I have made. Essentially, what I am trying to do is construct a 3d asteroid field. I wanted to use 'interesting' shapes and so have generated some items in a 3D program...which I exported as .obj files. I have read these into my program, storing them as vertices and can generate the shape in a jogl display. Happy days. The next stap was to wrap a suitable texture around the object and this is where i have been stuck for some time- i have searched numerous forums yet can't seem to crack it.

This is how i'm loading the texture image:

  gl.glGenTextures(1, retVal,0);   
  //do stuff for the bound texture
  //-get input stream and bind to image integer place-holder
  InputStream stream1 = AsteroidListener.class.getResourceAsStream("textures/asteroid_texture.png");
  BufferedInputStream bis = new BufferedInputStream(stream1);
  //-create buffered image
  BufferedImage bi=;
  Raster r =bi.getRaster();
  DataBufferByte dbi= (DataBufferByte) r.getDataBuffer();
  byte b[]=dbi.getData();
  //-create final byte buffer to use as the texture
  int texSize =b.length;
  //System.out.println("tex size is:" +texSize);
  ByteBuffer texture= ByteBuffer.allocateDirect(texSize);
  ByteOrder newOrder= ByteOrder.nativeOrder();
  //-fill texture that is in byte array
  gl.glBindTexture(GL.GL_TEXTURE_2D, asteroidTex);   
  glu.gluBuild2DMipmaps(GL.GL_TEXTURE_2D, GL.GL_RGB, bi.getWidth(), bi.getHeight(), GL.GL_RGB, GL.GL_UNSIGNED_BYTE,texture);

And i'm (trying) to wrap the generated shape with:

  gl.glBindTexture(GL.GL_TEXTURE_2D, asteroidTex);

Yet all I seem to be getting is the desired shape textured with something that is 'not quite right'. The texture appears to be getting overlaid, yet it is not the right colour and there seem to be some very odd 'flourescing' effects on the surface of the object.

Has anyone come across this before?
Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

Dwinin (72 views)
2015-11-07 13:29:08

Rems19 (81 views)
2015-10-31 01:36:56

Rems19 (74 views)
2015-10-31 01:32:37

williamwoles (107 views)
2015-10-23 10:42:59

williamwoles (93 views)
2015-10-23 10:42:45

Jervac_ (107 views)
2015-10-18 23:29:12

DarkCart (135 views)
2015-10-16 00:58:11

KaiHH (116 views)
2015-10-11 14:10:14

KaiHH (156 views)
2015-10-11 13:26:18

BurntPizza (171 views)
2015-10-08 03:11:46
Rendering resources
by Roquen
2015-11-13 14:37:59

Rendering resources
by Roquen
2015-11-13 14:36:58

Math: Resources
by Roquen
2015-10-22 07:46:10

Networking Resources
by Roquen
2015-10-16 07:12:30

Rendering resources
by Roquen
2015-10-15 07:40:48

Math: Inequality properties
by Roquen
2015-10-01 13:30:46

Math: Inequality properties
by Roquen
2015-09-30 16:06:05

HotSpot Options
by Roquen
2015-08-29 11:33:11 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!