diff options
author | Kenneth Russel <[email protected]> | 2005-05-13 23:57:50 +0000 |
---|---|---|
committer | Kenneth Russel <[email protected]> | 2005-05-13 23:57:50 +0000 |
commit | 7ac0aeff0fb6208a048588d9c83c941a82c64ed7 (patch) | |
tree | 519c460f0b298f7bef8845938535703853989fb2 | |
parent | 4a225f43a1f5f8a2ae95d3e3696c79e9090260e8 (diff) |
Added CgGL.cgCreateProgramFromStream and updated JOGL Cg demos to use
it so they can be run with Java Web Start.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@74 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4
-rw-r--r-- | make/build.xml | 5 | ||||
-rw-r--r-- | src/demos/cg/runtime_ogl/cgGL_vertex_example.java | 14 | ||||
-rw-r--r-- | src/demos/cg/runtime_ogl_vertex_fragment/runtime_ogl_vertex_fragment.java | 20 |
3 files changed, 31 insertions, 8 deletions
diff --git a/make/build.xml b/make/build.xml index 95afeee..3d672e9 100644 --- a/make/build.xml +++ b/make/build.xml @@ -50,7 +50,7 @@ <pathelement path="${classpath}" /> <pathelement location="${jogl.jar}" /> </path> - <javac destdir="${classes}" excludes="demos/cg/**" source="1.4" debug="true" debuglevel="source,lines"> + <javac destdir="${classes}" source="1.4" debug="true" debuglevel="source,lines"> <src path="${src}" /> <classpath refid="jogl.classpath" /> </javac> @@ -59,6 +59,9 @@ <exclude name="gleem/**" /> <exclude name="demos/util/**" /> </fileset> + <fileset dir="${src}"> + <include name="demos/cg/**/*.cg" /> + </fileset> </jar> <jar destfile="${jogl.demos.util.jar}"> <fileset dir="${classes}"> diff --git a/src/demos/cg/runtime_ogl/cgGL_vertex_example.java b/src/demos/cg/runtime_ogl/cgGL_vertex_example.java index ec2cb9a..f1f41dd 100644 --- a/src/demos/cg/runtime_ogl/cgGL_vertex_example.java +++ b/src/demos/cg/runtime_ogl/cgGL_vertex_example.java @@ -31,11 +31,14 @@ * */ +package demos.cg.runtime_ogl; + import net.java.games.cg.*; import net.java.games.jogl.*; import java.awt.*; import java.awt.event.*; +import java.io.*; /** * cgGL_vertex_example: simple demo of Nvidia CgGL API. Based upon C version @@ -187,9 +190,14 @@ public class cgGL_vertex_example implements GLEventListener CheckCgError(); /* Test adding source text to context */ - Program = CgGL.cgCreateProgramFromFile( - Context, CgGL.CG_SOURCE, "cgGL_vertex_example.cg", - profile, null, null); + try { + Program = CgGL.cgCreateProgramFromStream( + Context, CgGL.CG_SOURCE, + getClass().getClassLoader().getResourceAsStream("demos/cg/runtime_ogl/cgGL_vertex_example.cg"), + profile, null, null); + } catch (IOException e) { + throw new RuntimeException("Error loading Cg vertex program", e); + } CheckCgError(); System.err.println( diff --git a/src/demos/cg/runtime_ogl_vertex_fragment/runtime_ogl_vertex_fragment.java b/src/demos/cg/runtime_ogl_vertex_fragment/runtime_ogl_vertex_fragment.java index d0b7dc1..0c389e1 100644 --- a/src/demos/cg/runtime_ogl_vertex_fragment/runtime_ogl_vertex_fragment.java +++ b/src/demos/cg/runtime_ogl_vertex_fragment/runtime_ogl_vertex_fragment.java @@ -31,6 +31,8 @@ * */ +package demos.cg.runtime_ogl_vertex_fragment; + import net.java.games.cg.*; import net.java.games.jogl.*; import net.java.games.jogl.util.*; @@ -235,8 +237,13 @@ public class runtime_ogl_vertex_fragment implements GLEventListener // Load and compile the vertex program from demo_vert.cg; hold on to the // handle to it that is returned. - vertexProgram = CgGL.cgCreateProgramFromFile(context, CgGL.CG_SOURCE, "demo_vert.cg", - vertexProfile, null, null); + try { + vertexProgram = CgGL.cgCreateProgramFromStream(context, CgGL.CG_SOURCE, + getClass().getClassLoader().getResourceAsStream("demos/cg/runtime_ogl_vertex_fragment/demo_vert.cg"), + vertexProfile, null, null); + } catch (IOException e) { + throw new RuntimeException("Error loading Cg vertex program", e); + } if (!CgGL.cgIsProgramCompiled(vertexProgram)) CgGL.cgCompileProgram(vertexProgram); @@ -245,8 +252,13 @@ public class runtime_ogl_vertex_fragment implements GLEventListener CgGL.cgGLLoadProgram(vertexProgram); // And similarly set things up for the fragment program. - fragmentProgram = CgGL.cgCreateProgramFromFile(context, CgGL.CG_SOURCE, "demo_frag.cg", - fragmentProfile, null, null); + try { + fragmentProgram = CgGL.cgCreateProgramFromStream(context, CgGL.CG_SOURCE, + getClass().getClassLoader().getResourceAsStream("demos/cg/runtime_ogl_vertex_fragment/demo_frag.cg"), + fragmentProfile, null, null); + } catch (IOException e) { + throw new RuntimeException("Error loading Cg fragment program", e); + } if (!CgGL.cgIsProgramCompiled(fragmentProgram)) { CgGL.cgCompileProgram(fragmentProgram); } |