Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - EgonOlsen

Pages: 1 ... 818 819 [820] 821 822 823
12286
Projects / Racing Game
« on: February 12, 2003, 06:36:24 pm »
Quote from: "Neoteric"

Individually texturing the polygons has been deprecated in jpct, would you not reccomend that? Because it seems the only way to do landscapes properly.

It's still possible to texture the polygons individually when adding them. What is deprectaed is the possibility to change a polygon's texture AFTER adding it. The reason for this is the same i mentioned above while talking about the "vertex-shader"-stuff: The number of a polygon after adding it is not always the number it had when adding it, because jPCT optimizes the meshes (or call createTriangleStrips() and the whole mesh will be re-ordered). Maybe it's a good idea to allow some kind of IDs for polygons...we'll see....

12287
Projects / Racing Game
« on: February 12, 2003, 12:51:25 am »
About Stuntcar Racer...i just discovered this one. Have a look:

http://www.flipcode.com/cgi-bin/msg.cgi?showThread=02-10-2003&forum=iotd&id=-1

12288
Projects / Racing Game
« on: February 11, 2003, 10:28:23 pm »
Quote from: "Neoteric"
I haven't put a frame counter in yet, I'll put shading in soon if I can find a cheep way to do it, will need to know the frame rate then.

Providing it runs smoothly enough I'm not too worried.

Funny...a frame counter would be the first thing to put in for me...
Even if nothing else happens: I just have to know how fast this "nothing else" happens  :D
About the IGI-question again: I'm currently working on a octree-implementation for jPCT. That doesn't mean that something like IGI will be possible though, but it may ease the task somehow. Anyway...my current implementation lets you add an octree to an object in a single line of code, so even if it doesn't help, it doesn't hurt either.

12289
Projects / Racing Game
« on: February 09, 2003, 04:20:06 pm »
Yes...it's looking fine now. Is there a way to show the framerate or am i just blind?

12290
Projects / Racing Game
« on: February 08, 2003, 01:04:07 am »
Good question. jPCT's design is targeted to be a game oriented but versatile 3D engine while maintaining a reasonable size (of the jar) and i added some optimizations (i.e. the portal stuff) for indoor rendering. For large outdoor scenes, a quad- or octree would be more usefull (and maybe ROAM...), but even then...it's still Java. As much as i like Java, the fact remains that it isn't the fastest language around. I may add an octree implementation one day (at least it's on my list of "maybe-i-should-do-this" things) but i'm not sure if this would make something like Project IGI  possible. No one ever tried to do something like this in Java so there are no references. I believe that a lot more is possible with jPCT than i can think of at the moment (i'm always wondering what people are doing with the engine...it's everything but usually not what i have in mind when i'm programming... :D ).
About the frustrum culling: jPCT uses frustum culling on a per sector (for portal rendering), per object and finally per polygon base. It may help to split a terrain like in IGI into objects...which is a rather unlogical approach but it *may* work. Just a thought....

BTW: I had a look at your email-address. Are you the guy who wrote this raycasting applet with the slightly wrong rendered floors?

12291
Projects / Re: Racing Game
« on: February 07, 2003, 06:42:47 pm »
Quote from: "Neoteric"
A question though... I would like my landscape to be sun-lit (i.e from a distance and static) what would be the way to do this?

I can imagine three different solutions to this problem:
1.) Code the lighting information into the texture. This may produce nice results in some cases, but to be honest i doubt that will in your case.
2.) Use the normal lighting jPCT offers. Place the "sun" in the distance and play with the lightMul, linearDiv and fadeOutLight parameters in Config. Maybe it's possible to produce the desired effect this way.
3.) (and this is NOT possible at the moment but something i'm still thinking about)...use a kind of simple VertexShader-Interface to implement some things on a vertex-level for yourself. Problem with this is, that i have to find a logical, convenient and fast way of doing this and that isn't that easy. Anyway, it won't help you much hear me talking about features that may come in the future...

So i suggest to go with the dynamic lighting jPCT offers. If it really doesn't work, please let me know where the problem is...maybe i can do something about it.


Quote from: "Neoteric"

Also how is texture repeating set so it isn't streched over the whole landscape?

That's not possible, because that would hurt the software-renderers performance too much. If you really need it, do the modulo-calculation by yourself on the texture-coords (before calling addTriangle()). But that will require that you build the object by yourself (i.e. not using one of the loaders in Loader). IF the vertex-shader-stuff mentioned above would be in jPCT, it should be possible to do such things in a more convenient way...IF.... :wink:

BTW: I loved stuntcar racer. It was a great game to be played via a (null-)modem connection.

12292
News / Version 0.83 beta 3 has been released!
« on: February 06, 2003, 06:55:45 pm »
Quote from: "pepe"
The engine is compatible with Linux?
Yes. The software renderer will (should!) run on anything that supports Java1.1 (it does run on Apple, so it will run everywhere... :D )
OpenGL uses LWJGL which has been ported to Linux. I assume that it will work, but i haven't tested this (no Linux at the moment, just a plain FreeBSD webserver with no X installed). If it doesn't, blame LWJGL... :lol:

12293
Support / obfuscation?
« on: February 06, 2003, 06:51:44 pm »
I don't know, because i don't know this program nor do i know what it does exactly. I don't see a problem in byte-code obfuscation alone, but maybe when classes are being renamed!? I'm not sure how an obfuscator handles dynamic class-loading. I have to do this for the FrameBuffer and the Renderers, which are only loaded on demand. If the obfuscator can somehow handle this: fine! If it doesn't, than at least changing class names won't work.

12294
News / Version 0.83 beta 3 has been released!
« on: February 05, 2003, 11:59:16 pm »
Another beta version...i think a can get rid of the beta-status in the next version... :D
Anyway, this version adds support for sphere-polygon collision detection. This will suit some situations more than the ray-polygon based one (which is still available of course).
In addition, i reworked the OpenGL renderer a little bit to minimize state changes. This is always a good idea, even if the improvement isn't that large at the moment (read: none at all  :lol:  )

12295
News / Some textures for download
« on: February 04, 2003, 08:50:03 pm »
I've made some textures from photos that i've taken at the abandoned EXPO-2000 ground in Hannover/Germany. The textures are seamless and can be used in any way you like. Because this is my first real try to make textures, i'm not sure if they are good or bad...but at least they are free... :D

http://www.jpct.net/download/texturepack1.zip

12296
Projects / question about porting.
« on: February 02, 2003, 12:54:04 pm »
Have a look at the license for jPCT. You may release your projects using jPCT in any way you want (commercial, non-commercial...it doesn't matter). You don't even have to mention the use of jPCT in your project (albeit it would be nice doing so...but as i said: you don't have to).
About MD2: It's ok to use MD2 in your own projects (because you can't copyright a fileformat) BUT you are not allowed to use ID-software's tools to build the files without a proper license from them. However, you may use a freeware/shareware editor for MD2-files like they are floating all around the net. Respect the license of the used editor though.

12297
Support / Wireframe or border rendering?
« on: January 28, 2003, 12:17:32 am »
Code for picking will look like this:

Code: [Select]

SimpleVector td=Interact2D.reproject2D3D(camera, framebuffer, mouseX, mouseY);
int[] res = Interact2D.pickPolygon(theWorld.getVisibilityList(),td);

12298
Support / Wireframe or border rendering?
« on: January 27, 2003, 09:36:50 pm »
Quote from: "shoka"
I suppose it _could_ be possible to render the border and displayed data into a texture and then assign that to poly representing the area. But wouldn't that be quite expensive - after all that it should be achieved by using a 3D engine in the first place.. :)


Sure...just a thought to use the TextureEffect for that somehow. I think the best solution for the time being would be to use an extra object that represents the outlines, attach it to the object to "highlight" as a child object and only set it visible if the object should be highlighted and invisible otherwise.

Quote from: "shoka"

Another thing I forgot to mention in the first post - propably because it's completely different topic - is continous picking. The user interface should employ some method of mouse tracking, with highlighting and additional information show when cursor hovers over certain object in the scene; this propably needs to be done by firing picking rays at certain intervals to see if something is available.

I'm a bit concerned by performance issues - in Java3D this took too long, at least with unoptimized code and large scenes, and degraded performance too much on not-so-high-end machines..


Shouldn't be that much of a problem. Picking in jPCT takes place in Camera-space (that's why the methods in Interact2D require the VisList), so only polygons on screen will be checked. Just try it...it should be fast enough.

12299
Support / Detecting camera collisions
« on: January 27, 2003, 09:23:57 pm »
Well, have a look at the Bounce-example and replace

Code: [Select]

if (zoomin) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVEIN, zoomSpeed);}
if (zoomout) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVEOUT, zoomSpeed);}
if (shiftleft) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVELEFT, zoomSpeed);}
if (shiftright) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVERIGHT, zoomSpeed);}
if (shiftdown) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVEDOWN, zoomSpeed);}
if (shiftup) {theWorld.getCamera().moveCamera(Camera.CAMERA_MOVEUP, zoomSpeed);}


with this:

Code: [Select]

if (zoomin) {theWorld.checkCameraCollision(Camera.CAMERA_MOVEIN, zoomSpeed, Camera.DONT_SLIDE);}
if (zoomout) {theWorld.checkCameraCollision(Camera.CAMERA_MOVEOUT, zoomSpeed, Camera.DONT_SLIDE);}
if (shiftleft) {theWorld.checkCameraCollision(Camera.CAMERA_MOVELEFT, zoomSpeed, Camera.DONT_SLIDE);}
if (shiftright) {theWorld.checkCameraCollision(Camera.CAMERA_MOVERIGHT, zoomSpeed, Camera.DONT_SLIDE);}
if (shiftdown) {theWorld.checkCameraCollision(Camera.CAMERA_MOVEDOWN, zoomSpeed, Camera.DONT_SLIDE);}
if (shiftup) {theWorld.checkCameraCollision(Camera.CAMERA_MOVEUP, zoomSpeed, Camera.DONT_SLIDE);}


and remove the

Code: [Select]

cube.rotateZ(0.005f);


some lines above (to prevent the cube from spinning). This should show the basic usage of the camera collision (you can navigate using the num-pad in this example btw). The Camera.SLIDE option doesn't really work as it should...i'll have to fix this in a later version, but anyway...

I hope this helps. If it doesn't, feel free to ask again. Keep in mind that jPCT uses a ray/triangle-collision scheme for camera-collisions.
Depending on the scale of your world, you may have to adjust Config.collideOffset accordingly, but for Bounce, it should work fine the way it is.

12300
Support / OpenGL "gotchas"
« on: January 26, 2003, 01:45:07 pm »
For the time being: bump-mapping. I'm planing to add this to the OpenGL-renderer, but i'm not sure how fast i'll get it working in a way that it looks similar to software. You've already mentioned overbright lighting. That's it...all other things should work. Some optimizations like OptiZ and Spanbased HSR won't do anything for OpenGL, but that doesn't matter anyway. Transparency may look a little bit different when comparing both renderers, but that's nothing to worry about. In addition, everything that manipulate textures and/or the framebuffer (TextureEffects and some kinds of blitting) will be slower in OpenGL, because transfering new textures to the card is expensive in terms of performance. If there could be problems, this is documented in the methods itself.

LWJGL doesn't render into a standard component but its own. Therefor, the standard Java-stuff like Listeners and the like doesn't work on the OpenGL windows/fullscreen view. You have to use the LWJGL way of doing these things (which is quite simple (polling)) and if your application should be run without LWJGL when using the software renderer, you'll most likely have to write your own wrapper for such things...but there's nothing i can do about that...it's a limitation or feature (whatever you like to call it) of LWJGL, which isn't my project.

Hope this helps.

Edit: And anti-aliasing. I'm not enabling it ATM in the OpenGL mode. It can still be enabed via the drivers or tools...depending on your hardware.

Pages: 1 ... 818 819 [820] 821 822 823