Author Topic: 3d Programming  (Read 11877 times)

loau05

  • Newbie
  • *
  • Posts: 8
    • View Profile
3d Programming
« Reply #15 on: July 19, 2004, 04:29:27 am »
Ryan,

I see, probably I'm mixing up something with my dev-configuration. Which libraries/includes do I need for building freeglut/klimt? I'm using qt-emb. 2.3.7
for my other qpe-projects - is that ok for klimt?
Thanks,
Georg

loau05

  • Newbie
  • *
  • Posts: 8
    • View Profile
3d Programming
« Reply #16 on: July 19, 2004, 11:00:49 am »
Quote
Quote
thank you. Now I can compile but then the linker fails with 'cannot find lXext' although XFree86-devel is installed and the libs (libXext.a and libXext.so) are in the X11-libs-dir.

Georg,

Looks like its still pulling native libraries in... linking againt Qt/Embedded does not require any X libraries to be present at all... and in fact linking against them is generally a sure fire way to have your app fail when you try to run it on the Z.

Ryan

Ryan,

finally I made it (somehow) to build a freeglut.so. Could you please be so kind and
explain the dependencies and meanings of the several libs contained in your source-package to me? What are the minimum requirements to use klimt on the
Z5500? I can't await to start with that stuff ... g*

Thanks a lot,
Georg

rrusaw

  • Newbie
  • *
  • Posts: 12
    • View Profile
    • http://
3d Programming
« Reply #17 on: July 19, 2004, 12:46:04 pm »
Quote
Ryan,

finally I made it (somehow) to build a freeglut.so. Could you please be so kind and
explain the dependencies and meanings of the several libs contained in your source-package to me? What are the minimum requirements to use klimt on the
Z5500? I can't await to start with that stuff ... g*

Thanks a lot,
Georg

Georg,

Klimt just requires libqpe and libqte. Nothing else is required.
Freeglut requires libqpe, libqte, libKlimt, libqpc, libqtc and libglut2qevent. libqpc and libqtc are C bindings to libqpe and libqte respectively, and libglut2qevent handles the mapping of the glut main loop into a qevent loop. The source code to all 3 of those libraries is also in the source tarball.

To run apps I generally use LD_PRELOAD, ie.

LD_PRELOAD=./libKlimt.so ./SomeKlimtApplication

or

LD_PRELOAD=./libKlimt.so:./libglut2qevent.so:./libqtc.so:./libqpc.so:./libfreeglut.so ./SomeGLUTApplication

Alternatively you could place the libraries somewhere in your LD_LIBRARY_PATH

Good luck,

Ryan

loau05

  • Newbie
  • *
  • Posts: 8
    • View Profile
3d Programming
« Reply #18 on: July 19, 2004, 03:40:23 pm »
Ryan,

does that mean that I don't need freeglut for building apps using klimt? If so (I can't believe) what's the difference and why do I (might) need freeglut?

Georg

rrusaw

  • Newbie
  • *
  • Posts: 12
    • View Profile
    • http://
3d Programming
« Reply #19 on: July 19, 2004, 03:57:37 pm »
Quote
 
Ryan,

does that mean that I don't need freeglut for building apps using klimt? If so (I can't believe) what's the difference and why do I (might) need freeglut?

Georg

Georg,

That is correct, freeglut is not required for building apps directly using Klimt, anymore than you need to use freeglut on your PC to build OpenGL apps. It just provides a windowing toolkit with event handling and some additional utility functions. From the freeglut homepage  "GLUT (and hence freeglut) allows the user to create and manage windows containing OpenGL contexts on a wide range of platforms and also read the mouse, keyboard and joystick functions."

If you look at the examples provided in the source archive, you'll find examples of both types of applications. simple_linux_qte and KlimtDemo_qws, in the klimt/test directory, just use libKlimt and the regular Qt api. The test appliction in the freeglut/test directory uses the GLUT api to perform a similar task.

Ryan

loau05

  • Newbie
  • *
  • Posts: 8
    • View Profile
3d Programming
« Reply #20 on: July 20, 2004, 09:23:51 am »
Quote
Quote
 
Ryan,

does that mean that I don't need freeglut for building apps using klimt? If so (I can't believe) what's the difference and why do I (might) need freeglut?

Georg

Georg,

That is correct, freeglut is not required for building apps directly using Klimt, anymore than you need to use freeglut on your PC to build OpenGL apps. It just provides a windowing toolkit with event handling and some additional utility functions. From the freeglut homepage  "GLUT (and hence freeglut) allows the user to create and manage windows containing OpenGL contexts on a wide range of platforms and also read the mouse, keyboard and joystick functions."

If you look at the examples provided in the source archive, you'll find examples of both types of applications. simple_linux_qte and KlimtDemo_qws, in the klimt/test directory, just use libKlimt and the regular Qt api. The test appliction in the freeglut/test directory uses the GLUT api to perform a similar task.

Ryan

Ok, I will try klimt first to go on with freeglut thereafter ... as soon as there's enough time for it - too much work at the moment :-(

Georg

mikesilver

  • Newbie
  • *
  • Posts: 1
    • View Profile
3d Programming
« Reply #21 on: October 30, 2004, 11:39:08 am »
Hi

Im newby with zaurus. Im trying to compile klimt for zaurus, bue im having a liltle problems.

When i try to compile klimt he complains that "No rule to make target 'usr/lib/qt3/mkspecs/qws/linux-sharp-g++/qmake.conf'

Some posts back you explain how to fix this, but i realy dont understand.

I just try to copy 'qws\linux-sharp-g++\*' from you tar archive to usr/lib/qt3/mkspecs/qws/linux-sharp-g++/, but then it starts to give-me stupid erros.

Do i need to do something else? And if so, how to do that?



Thanks

khieo

  • Newbie
  • *
  • Posts: 3
    • View Profile
3d Programming
« Reply #22 on: November 11, 2004, 07:34:43 pm »
Well, I somehow finally managed to compile klimt for zaurus, though never had that problem mike.
Either way when trying to run Klimtdemo on sl-6000L the images looks wierd. Seems to me it should've been a single rotating cube, but what I actually see is, 4 rotating cubes on 1/3 of the top portion of the screen, side by side .

This probably has to do with the 480x640 screen resolution of the 6000 series but can't figure out how to fix it.

Anyone got any ideas or have seen this before???
khieo
SL-6000L

erio

  • Newbie
  • *
  • Posts: 4
    • View Profile
3d Programming
« Reply #23 on: November 12, 2004, 02:31:05 am »
Zsurface can be used only by QVGA.
I think that what is necessary is just to be able to use SDL.

It is a problem that neither an alpha blend nor a speculer is normally reflected rather than it...:-(

alpha blend
http://homepage2.nifty.com/cstation/Image/zmemo04090801.png

speculer
http://homepage2.nifty.com/cstation/Image/zmemo04083102.png zaurus
http://homepage2.nifty.com/cstation/Image/zmemo04083101.png windows
erio
Yokohama, Japan
--------------------
Zaurus SL-C700 Special Kernel v14d
1gig SD on ext2
Air"H PHS CF card

khieo

  • Newbie
  • *
  • Posts: 3
    • View Profile
3d Programming
« Reply #24 on: November 12, 2004, 08:51:19 am »
Uhm, so Zsurface can't run in VGA. tks erio.

Regarding do SDL:
So let's see, if I do actually want to do some 3D programming on the zaurus...say a 3D First Person Shooter, is it possible to do it plainly just on SDL without any softGL lib like klimt?
khieo
SL-6000L

rrusaw

  • Newbie
  • *
  • Posts: 12
    • View Profile
    • http://
3d Programming
« Reply #25 on: December 02, 2004, 10:18:30 pm »
Quote
Uhm, so Zsurface can't run in VGA. tks erio.

Regarding do SDL:
So let's see, if I do actually want to do some 3D programming on the zaurus...say a 3D First Person Shooter, is it possible to do it plainly just on SDL without any softGL lib like klimt?

Yeah, sorry about that. I have a patched version of the Klimt CVS tree that enables a #define to enable the use of a regular memcpy to a char** for the blitting of the display that should be more portable than the Zsurface library.

As has been noted you can always use the SDL backend. Another option is to use the klimt extensions to manually pass the backbuffer memory pointer, although then you have to handle the screen bliting manually through your own memcpy or whatnot. If any one is interested I can upload it for others to try. Yet another option is for me to get some motivation and patch Zsurface to handle full VGA displays.

Ryan