Oberon Community Platform Forum
February 19, 2019, 10:06:27 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: GPU 3d graphics / OpenGL  (Read 13397 times)
soren renner
Global Moderator
Full Member
*****
Posts: 216



« on: October 01, 2008, 04:28:12 PM »

I wonder what the best way to drive opengl from a2 is. I suppose that I could write a server (say on linux) that created a rendering window and accepted opengl as strings. There would be a performance hit from converting floats to strings and back, though. Huh?

That is, the window with GPU graphics would be in X windows and the a2 renderer would be either unixaos on the same box or native a2 on another machine.
« Last Edit: October 01, 2008, 04:36:18 PM by soren renner » Logged
Pat
Jr. Member
**
Posts: 69


« Reply #1 on: October 04, 2008, 04:25:17 PM »

Hi
Alexey Morozov is currently analyzing how to drive a modern graphics card with CUDA capabilities from A2 to get some computing power from graphic cards.
-there was also the OberonGL library around, which drives graphic cards with a simplified OGL.
-there are Pascal APIs for OpenGL, e.g. at http://www.basegraph.com/bg/bgp/bgpintro.html , with available source but not "open source", and I believe to have heard about an OpenGL Oberon API some time ago in this news group.
-You already have a performant volume renderer ()
-We have a volume renderer (voxel data based)
-There is the nice FDD package from Christoph Kleiner (still for System3) which allows nice 3D + time computer graphics, although not yet accelerated
-There is the three-dimensional dreams package (the precedessor of FDD)
- there is Dim3, also offering some basic 3D rendering capabilities
- we have a nice library for volumetric data handling, including Navier Stokes Fluid dynamics
Thus maybe we should join forces into a unified way to get advanced/fast Oberon Graphics.
Who would be willing to participate ?
Pat
Logged
soren renner
Global Moderator
Full Member
*****
Posts: 216



« Reply #2 on: October 04, 2008, 08:08:30 PM »

me me me! pick me!

one more thing: a lazy functional language like haskell built on AO. since the ghc is written in haskell, i wonder how much code it would take in the systems language to bootstrap it?

you may think this is not relevant to graphics but i think it is

if A2 could drive a GPU card then i could write a hybrid polygon renderer with voxel-tracing for visibility culling. right now i am looking to do just that on linux using haskell -- naturally one prefers Oberon -- and haskell IN oberon even more....

also: 64bit A2 please.
Logged
Pat
Jr. Member
**
Posts: 69


« Reply #3 on: October 05, 2008, 12:45:29 PM »

Functional Language in Oberon World - sound like an oxymoron, but it is not.
See Scheme.Mod in the distribution: which is a interpreter of the functional language "Scheme".
Then see Vinci.Mod and all those files ending with *.vinci" : which is a Scheme-based functional language for graphics programming.
Still linked to the old Oberon context but probably easily ported to the new objects.
I have never seen Haskell in Oberon, though.
Maybe it can somehow be mapped to Scheme ?
Is there a EBNF syntax (http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_Form) for Haskell ? Then you might use and automatic parser generator like Coco/R to rapidly develop an interpreter.

Logged
Pat
Jr. Member
**
Posts: 69


« Reply #4 on: October 05, 2008, 12:55:02 PM »

Haskell syntax in BNF for automatic parser building:
http://www.math.chalmers.se/~hallgren/CactusExample/
Logged
sage
Full Member
***
Posts: 168



WWW
« Reply #5 on: October 06, 2008, 12:08:35 PM »

And me too!  Wink
a lazy functional language like haskell built on AO
Is it needed for describing 3d scenes?
Interesting work related to scene's describing language: http://www.ssw.uni-linz.ac.at/Teaching/Projects/Raytracing/
Logged
jmdrake
Newbie
*
Posts: 2


« Reply #6 on: December 01, 2008, 12:40:10 AM »

I wonder what the best way to drive opengl from a2 is. I suppose that I could write a server (say on linux) that created a rendering window and accepted opengl as strings. There would be a performance hit from converting floats to strings and back, though. Huh?

That is, the window with GPU graphics would be in X windows and the a2 renderer would be either unixaos on the same box or native a2 on another machine.


Hmmm....I would think the best way to do that would be to write a custom VNC and have OpenGL render directly to it.  (Personal note.  I've yet to get VNC to work right under AOS for Windows but I'm sure I'm just doing something wrong).

Glad to see you're still working with 3D.  I've run across a couple of other realtime voxel engines you might be interested in looking at.  Are you familiar with Ken Silverman's Voxlap engine?  Someone has build a voxel Wolfenstein 3D lookalike.  The graphics aren't spectacular (looks like a world built out of tiny Legos) but it's got a great framerate and 6 degrees of freedom.  More impressive is the 1999 voxel based game Outcast.  Neither the Outcast nor the Voxlap engines require graphics acceleration.  (The Voxlap engine takes advantage of SSE / 3DNow instructions, but that seems pretty straightforward to implement.)

Also is there any chance of a simple tutorial for your engine?  Like a cube on a plane or something?  I'd like to try my hand at making a demo but I'm not sure where to start.

Regards,

John M. Drake
« Last Edit: December 02, 2008, 04:21:03 AM by jmdrake » Logged
soren renner
Global Moderator
Full Member
*****
Posts: 216



« Reply #7 on: December 01, 2008, 05:24:09 PM »

Glad to hear of your interest! I will prepare something for you in a few days and post it here.
Logged
sage
Full Member
***
Posts: 168



WWW
« Reply #8 on: January 09, 2009, 10:18:28 AM »

-There is the nice FDD package from Christoph Kleiner (still for System3) which allows nice 3D + time computer graphics, although not yet accelerated
Actually, how about to back to life this nice package and place it in OCP repository and get it at last compatible with current A2 system?
Logged
Pat
Jr. Member
**
Posts: 69


« Reply #9 on: January 13, 2009, 07:47:02 PM »

Four-dimensional dreams package & thesis from christoph kleiner is here for a limited time:

package: http://www.swissnano.org/pub/FDD.zip
thesis: http://www.swissnano.org/pub/FDD.R.zip

It is heavily intertwined with the Gadgets and runs only in Oberon (maybe in Oberon within A2 ? I have not tried because if I need FDD, I still switch to the old PlugIn Oberon where it was installed).
The thesis is readable anyway, the geoometriy and the scene description are good.
If the new A2 "gadgets" will become available, porting is certainly worth a thought.
Does anyone know about Christoph's whereabouts ?
Pat
Logged
sage
Full Member
***
Posts: 168



WWW
« Reply #10 on: January 14, 2009, 06:52:58 AM »

Thank you!
Definitely, nice package. Scene editing done very good! I think it MUST to have in A2 release  Wink
Probably, at first in Oberon within A2.
I don't understand German, but it seems Christoph now politician http://www.horgen.net/cvp/cvp-aktuell10.pdf
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!