>
> I'm fuzzy on the shader stuff. For all my 3d dev, I just jumped into
> using osg, and whatever I've built has been derived from
> tutorials/examples given online. With the level of abstraction osg
> provides, I haven't had to make any OpenGL calls directly, so when you
> say "using the shaders and avoiding all built in state"... I don't
> understand what "avoiding all built in state" is in an osg context.
> Does it mean I shouldn't be using osg::StateSet?
>

  Pretty much. The state info is used by the OpenGL 1.x Fixed Function
Pipeline (FFP) to produce different visual appearances (textures, lighting,
etc). GLES 1 has FFP (it's very similar to OpenGL 1.x) but has no GLSL
shader features. GLES 2.0 has removed all FFP functionality, and ONLY has
GLSL shaders..

  The GLES 2 ShaderGen I referred to previously will write a replacement
GLSL shader for you, on the fly, to emulate SOME of this FFP capacity.
However, if you're targeting GLES 2, you're usually doing so with the
intent of using GLSL (otherwise you'd just use GLES 1). So, you'll want to
learn to do things with shaders eventually.


> I'm using
> http://www.openscenegraph.org/projects/osg/wiki/Community/OpenGL-ES
> to set the environment up... and since I'd like to develop for OpenGL
> ES 2, I'll be using "Cmake settings for Emulating OpenGL ES 2.0 when
> you only have standard OpenGL available" to build osg to create my
> app. When it comes time to actually deploy, I'm guessing I'd rebuild
> osg against "Cmake settings for OpenGL ES 2.0"?
>

  Yes. I assume you're intending to deploy on a non-desktop platform, like
Android, iOS or some embedded device? There are complications when you go
to omit the GLX or WGL windowing system interface that OSG currently relies
on and some platforms don't provide. GLES provides "EGL" which is a similar
design, but currently OSG is not equipped to use EGL solely without GLX or
WGL.


> I also downloaded an emulator/sdk for OpenGL ES 2 from PowerVR, and
> ran a bunch of default examples they provided. Does that factor in at
> all? They provide libEGL.so and libGLESv2.so libs for linking as well


  I have worked with this emulator. It works fine on Windows. I had trouble
getting it to work on Linux.
 What exactly is involved in using ShaderGen? From the osgshadergen

> example, it looks like all that's done it is attaching it as a node
> visitor to your scene graph. Does it just automagically go through
> your scene and convert fixed function pipeline stuff to shader
> pipeline stuff?
>

  Yes.


> > Which OS? OSG really only has ES2/EGL windowing interfaces for Xwindows
> -- Win32 is not implemented.
> I'm on Linux
>

  Well, if you got the PowerVR emulator working, you're ahead of me.

-- 
Chris 'Xenon' Hanson, omo sanza lettere. [email protected]
http://www.alphapixel.com/
Training • Consulting • Contracting
3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4 •
GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL
Digital Imaging • GIS • GPS • Telemetry • Cryptography • Digital Audio •
LIDAR • Kinect • Embedded • Mobile • iPhone/iPad/iOS • Android
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to