How to render images from solids/surface modeler through to jogl/openGL

Hi All…

I hope someone here can suggest some resources or share some thoughts on how the graphics/modeling world are integrated with jogl/openGL ?

I’m very new to openGL/jogl – and have done the usual searches etc…
After some time now, it’s still not clear to me how data is moved from a modeler (like Blender), through to rendering (maybe with POVRay) and finally integrated/manipulated/displayed using openGL/JOGL ?

I understand there are utilities out there like “POV2GL” that can transform a POVRay file format to OpenGL code/meshers but am I looking/reading outdated methods/processes to get from Model to OpenGL – it just seems too complex…

I’m considering one of the tooling-stacks – see text below… but not quite sure what current best practice is RE: Getting the surface/solid/model info. rendered and into openGL fast enough to be fluid/real-time animation with photo-realistic look…

I’d like to experiment - developing a virtual pinball game.
Sites like: http://bytonic.de/html/benchmarks.html provide encouraging Java gaming statistics/results - but I don’t want to go too far down the road – only to realize that the performance won’t be there ?

I’d like to coordinate rich stereo sound, photo realistic graphics - with very minimal animation, and very realistic physics…
I’d like the images to look as good as this:
http://en.wikipedia.org/wiki/File:Glasses_800_edit.png
Link copied from here:
http://en.wikipedia.org/wiki/POV-Ray

I’d like the playfield to be a static 3D photo-realistic image – with only the ball and a couple elements animated at any one time… spinner, pop-bumper etc.

I know I can probably produce such an image using Blender and POVRAY… but how on earth do I integrate/interact-with and display using openGL.

There does not seem to be much discussion/examples out there on the web…

Is that because – current “game” developers use a different approach ?

Hope to hear from someone here…
Thanks
F


              ogre4j

jogl ogre

    opengl

  • myGameEngine

JNI    |

Newton Game Dynamics

joal fmod

  • myGameEngine/openGL <== ?how? <===> BlenderSurfaces <===> IGES <===> CADSolids

OK - Maybe I’m being too general… in my previous post…

  1. I know solids modelling tools provide the ability to animate a view of your rendered image.
    So for example (within Blender) you can render your model to POVRAY and then animate along a path.
  2. Animation tooling could for example generate a series of images along a certain path.
  3. I think you can then take the series of images/raw-bytes and present in an openGL panel/window.

But this leaves me having to generate every possible image/view, for every point in my 3D world/model.
Is this how game developers to it ?

  • There must be an easier way – to go from model – to openGL and generate the images on an as-needed basis ?
  • If you’re just using openGL to present raw-bytes/images you’ve exported from your modelling tool – how do you detect collision/interraction between the chacaters/objects you want to animate and the the 3D world you’ve exported.
    There must be a way to present the model in openGL without losing knowledge of edges, walls, boundries etc.

Any pointers to tutorials, resources on the web would be greatly appreicated…

Thanks
F

Normally you will create the 3D Models with your 3D tool and export them to the desired binary/asci format your game/engine supports.
Your game/engine will read/load those files and display them the way you like to.

Creating a game is a huge amount of work and time. Even a small game will consume a big amount of it, when you start developing games.

Thats the flow i know so far and used to do.

have you ever programmed in 2D. and I am hoping you have, because then all this si another one of those “I want to program another quake, only problem is that I cant program. I cant pay you but will you make it for me”, please no one will reply.

[quote]I’d like the playfield to be a static 3D photo-realistic image – with only the ball and a couple elements animated at any one time… spinner, pop-bumper etc.
[/quote]
don’t worry about 3D formats then, just render everything to image files [multiple for animations], and display them in the game.

Thanks for the replies… I appreciate it.


Evil-Devil: Thanks - that was helpful. I’ve since found some info. that echo your thoughts - links like this I’ve found very helpful:
http://users.ece.gatech.edu/~lanterma/mpg08/mpglecture04f08_4up.pdf
http://www.ce.chalmers.se/edu/course/TDA361/pipeline.pdf

So I understand now that JOGL/opengl would take a stream of “primitives” from my games engine; the opengl processing “pipeline” would take care of rendering this on the screen. The collision detection and conversion from model=>to opengl primitives would be done at the layer of my game engine. I’m curious… how does JOGL make use of an openGL/pipeline that is implemented in hardware on the graphics card; wouldn’t each card offers “extras” that others don’t ?


h3ckboy: No to 2D “games” programming though I’ve done plenty of Charting/Graphing in Java and have been programming Java for nearly 10 years now. Most of my experience has been high-level, business applications development. I only touched on C++ and some Assembly programming in University and would be very pleased if I could leverage my Java skills and avoid using C/Assembly though I’m skeptical. JOGL caught my eye a couple of years ago. If I never write a game engine – but learn more about the new Java memory and threading models, NIO and openGL image rendering… then I’m happy. As for game engines – my interest is Pinball.


Hansdampf: I was thinking that too. But I won’t be able to get away with totally static background. As I mentioned in my original post - think of a pinball playfield; some elements need to be animated like spinners, pop-bumpers, though most of it is static during gameplay.
Perhaps its the LCD/Hardware they use – but I’ve been disappointed by the graphics of these attempts:
http://globalvr.com/products_up_cabinet.html
http://globalvr.com/products_up.html
http://www.acquiremag.com/game/misc-gaming/tab-austria-virtual-pinball.php

Maybe I could just animate small sections of the larger static image when needed ?
This approach is even more interesting – it would give a pinball playfield a real-world feel.
http://www.youtube.com/watch?v=Jd3-eiid-Uw

In any case – from what I’m reading and hearing from you guys… I’d have to create my own utilities to convert whatever "3D"Model format I’m using into primitives that I could render through JOGL to openGL if I go that route.

There are no “standard” utilities, tools for this type of operation ? I’m surprised - given that this would be a very common requirement.

Take Care…
Thanks
F