Java-Gaming.org Java4K winners: [ by our judges | by the community ]         
Featured games (67)
games approved by the League of Dukes
Games in Showcase (∞)
games submitted by our members



News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  Print  
  Fasted way of loading underneath data  (Read 851 times)
0 Members and 1 Guest are viewing this topic.
Offline Gorgorath

Jr. Member
**

Posts: 87


Java games rock!


« on: 2006-01-25 11:33:51 »

-3592.188597 -31119.243622 -31.656954 45 48 55
-4032.520771 -32321.662903 -2988.956690 21 20 25
-4032.530785 -32321.731567 -2974.183321 20 19 24
-3994.546652 -32327.033997 -2988.503218 19 18 23
-4033.147812 -32338.432312 -1982.117653 21 20 25
-4032.834053 -32324.501038 -2929.337263 21 20 26
-4033.452511 -32333.972931 -2537.735462 20 19 25
-4032.876968 -32326.667786 -2749.205112  19 18 23
-4033.049583 -32326.438904 -2869.204998 20 19 25


the first 3 numbers are the coordinates, the second three are the rgb values.
Right now i'm using this code to read them in:
   try
      {
         d = new DataInputStream( new BufferedInputStream(
                            new FileInputStream(ptsFile) ) );
      }
      catch ( FileNotFoundException ie)
      {
         return -1;
      }

      try
      {
         while ((d != null) && (d.available() > 0))
         {
            s = d.readLine();/*StringOperations.nextData(d);*/
            if (s != null)
            {
               tokens = new StringTokenizer(s);
               if (tokens.countTokens() == 6)
               { //Parse tokens as normally

any suggestions, coz i need to read in a million of these points:)
Offline kevglass
« League of Dukes »

JGO Kernel
*****

Posts: 5214
Medals: 49


Mentally unstable, best avoided.


« Reply #1 on: 2006-01-25 12:16:03 »

Write a tool to convert from your text format, to a binary format. Read the binary format in one big data buffer (IntBuffer ?) and use it directly from that buffer. Smiley

Kev

Offline Gorgorath

Jr. Member
**

Posts: 87


Java games rock!


« Reply #2 on: 2006-01-26 09:47:20 »

okay i figured out i need to use Nio;)

but right now i have it like this, first i put a integer in a bytebuffer, this is the total number of points to be read in, after that i put the coordinates array in it. and finally tthe rgb values. 
Then i want  to create directly floatbuffers from it by its given position and limit, but how can i do this:)
Games published by our own members! Go get 'em!
Offline Riven
« League of Dukes »

JGO Kernel
*****

Posts: 5866
Medals: 255


Hand over your head.


« Reply #3 on: 2006-01-26 10:31:58 »

1  
2  
3  
4  
ByteBuffer bb = ByteBuffer.allocateDirect(...).order(ByteOrder.nativeOrder());
// fill with data
bb.rewind(); // or set any position/limit you want the FloatBuffer to refer to...
FloatBuffer fb = bb.asFloatBuffer();

Hi, appreciate more people! Σ ♥ = ¾

Learn how to award medals... and work your way up the social rankings
Offline Gorgorath

Jr. Member
**

Posts: 87


Java games rock!


« Reply #4 on: 2006-01-26 10:54:19 »

1  
2  
3  
4  
ByteBuffer bb = ByteBuffer.allocateDirect(...).order(ByteOrder.nativeOrder());
// fill with data
bb.rewind(); // or set any position/limit you want the FloatBuffer to refer to...
FloatBuffer fb = bb.asFloatBuffer();

what i want( don't know if it's possible is the following ):
at position 4 ( coz of the first integer in the buffer) my vertex positions starts with goes from 4 till (sizeOf(float)*4*numPoints),
and then i want to read in the byte values that are stored after the vertices. I don't want to use getFloat() coz i want to give the buffers directly to opengl
but is it posible, coz i read the the method asFloatBuffer for instance read from 'position' to the end of the buffer
Pages: [1]
  Print  
 
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.094 seconds with 20 queries.