Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Mai 15, 2024 17:07

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 1 Beitrag ] 
Autor Nachricht
 Betreff des Beitrags: glMap und Bezierpatches
BeitragVerfasst: Do Feb 12, 2009 22:57 
Offline
DGL Member

Registriert: So Aug 20, 2006 23:19
Beiträge: 564
Hi Leute,
ich beschäftige mich grad so etwas in diese Richtung mit den entsprechenden Funktionen und bin wiedereinmal freudig überrascht, dass wir im Wiki dazu ein Tut haben. Leider gibs dazu keinen ausführlichen Quellcode, den ich mal zu Rate ziehen kann, denn meine Umsetzung zeigt mir nichts an ^^

Evtl hab ich das ganze System noch niht wirklich geblickt aber bei mir hab ich das mal folgendermaßen implementiert:
Code:
  1.  
  2. package scene.worldScene;
  3.  
  4. import java.nio.FloatBuffer;
  5.  
  6. import javax.media.opengl.GL;
  7. import javax.media.opengl.glu.GLU;
  8.  
  9. import core.GLRenderer;
  10. import scene.GLScene;
  11. import util.Vector3f;
  12.  
  13. public class WorldScene extends GLScene {
  14.  
  15.     private final Vector3f[] controlPoints = new Vector3f[] {
  16.                     new Vector3f(-4.0, 2.0, 0.0),
  17.                     new Vector3f(-2.0, 4.0, 0.0),
  18.                     new Vector3f(2.0, -4.0, 0.0),
  19.                     new Vector3f(4.0, 2.0, 0.0)};
  20.        
  21.     private FloatBuffer controlPointsBuffer;
  22.    
  23.     public WorldScene(String name, GLRenderer glRenderer)
  24.     {
  25.         super(name, glRenderer);
  26.        
  27.         controlPointsBuffer = FloatBuffer.allocate(controlPoints.length * controlPoints[0].toArray().length);
  28.     }
  29.  
  30.     @Override
  31.     public void draw(GL gl, GLU glu)
  32.     {
  33.        
  34.         //gl.glMapGrid1f(30, 0.0f, 1.0f);
  35.         //gl.glEvalMesh1(GL.GL_LINE, 0, 30);   
  36.  
  37.         gl.glDisable(GL.GL_DEPTH_TEST);
  38.         gl.glDisable(GL.GL_TEXTURE_2D);    
  39.         gl.glBegin(GL.GL_LINE_STRIP);
  40.             for(int i=0; i<30;i++)
  41.                 gl.glEvalCoord1f(i/30);
  42.             gl.glEnd();
  43.     }
  44.  
  45.     @Override
  46.     public void init(GL gl, GLU glu)
  47.     {
  48.        
  49.         for (int i=0; i<controlPoints.length; i++)
  50.             controlPointsBuffer.put(controlPoints[i].toArray());
  51.        
  52.         gl.glMap1f(GL.GL_MAP1_VERTEX_3, 0f, 1.0f, 3, 4, controlPointsBuffer);
  53.         gl.glEnable(GL.GL_MAP1_VERTEX_3);
  54.     }
  55.  
  56. }
  57.  


Ich hab das ganze einmal versucht, über glEvalMesh zu rendern und auch einmal über EvalCoords. Beides zeigt mir nichts an.
leider kann man sich ja scheinbar die Koordinaten auch nicht irgendwie ausgeben lassen, um mal zu schauen, ob das überhaupt sinnvoll ist, was da rauskommt.

Sieht da jemand irgendeinen Fehler?

Danke schonmal


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 1 Beitrag ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.024s | 17 Queries | GZIP : On ]