GPWiki.org
GPWiki.org
It is currently Fri May 24, 2013 12:47 pm

All times are UTC




Post new topic Reply to topic  [ 19 posts ] 
Author Message
PostPosted: Sat Feb 25, 2012 7:37 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
I wasn't sure where to post this:

Hi, I'm new to the forums, but I've been reading them on and off, for about two years now. For the past three years I have been working on various projects. In the past year I have combined them into a 3D game engine, with my own custom physics engine, custom rendering algorithms that use OpenGL, and a bunch of other stuff. Essentially everything is non-standard, customized, modified, or completely reversed engineered, except for a few file parsing libraries like zlib and simpleini. I just want to know if anyone has any opinions or questions, or wants to help test it.
here's the link http://pylon.googlecode.com
you will need python 2.7 installed for windows to run it.

It is called Pylon (unintentional StarCraft reference :thumbs , http://en.wikipedia.org/wiki/Pylon_(architecture), http://en.wikipedia.org/wiki/Electricity_pylon), other things that use python are also called Pylon, bit I did not know that when I named it :doh .

Pylon is a multi-threaded engine, but uses no traditional thread safety techniques, yet it is quite still stable. This was originally a failure to learn how to use mutexes, but has subsequently become a feature. Compared to other engines on the forums this one is complete ****, but since I have been using a 1GHz dual core laptop running linux, with an intel integrated graphics chip, Pylon has extremely high future compatibility :rock (I think :x ). There is a lot left that I still need to implement in it, but it works :) , and for something that started out as plain curiosity three years ago, I think it's about time that I start letting others who might be interested know about it.

- TarpeyD12

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Sat Mar 03, 2012 10:02 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Image

this is the really simple test 'game' for my engine, quite unimpressive.

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Sat Mar 03, 2012 10:49 pm 
Funky Monkey

Joined: Thu Sep 09, 2004 1:17 pm
Posts: 1552
Location: burrowed
Hard to see whats going on really, care to explain? :P

_________________
Long pork is people!

wzl's burrow


Top
 Profile  
 
PostPosted: Sat Mar 03, 2012 11:11 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
well this is just a test that I run, the large sphere is obviously the limits of the simulation, and the smaller spheres are being periodically repsitioned at the origin with identical velocities, each sphere has a different texture on it, some are forced to be transparent, while the textures on others are by default transparent(like an RGBA .tga file). I use this for seeing if my face culling algorithims are working properly(you only see the inside back of the large sphere), and if the back to front rendering is working as well. The lines after the spheres are their position(yellow) and rotational(red, green, blue) history, faded with time.

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Sun Mar 04, 2012 8:32 am 
Dexterous Droid
User avatar

Joined: Wed Aug 18, 2004 7:40 pm
Posts: 3735
Location: South Africa
Looks pretty cool, now it's time you make a game with it!

Quote:
Pylon is a multi-threaded engine, but uses no traditional thread safety techniques, yet it is quite still stable. This was originally a failure to learn how to use mutexes, but has subsequently become a feature.

That makes me verrry nervous about ever using your engine myself :lol

_________________
Whatever the mind can conceive and believe, it can achieve


Top
 Profile  
 
PostPosted: Sun Mar 04, 2012 7:31 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
IGTHORN wrote:
Looks pretty cool, now it's time you make a game with it!

Quote:
Pylon is a multi-threaded engine, but uses no traditional thread safety techniques, yet it is quite still stable. This was originally a failure to learn how to use mutexes, but has subsequently become a feature.

That makes me verrry nervous about ever using your engine myself :lol


It is actually very stable, as long as the physics thread and rendering thread are over 10 cycles per second there are no problems at all, even when they fall below 10 per second, it will only crash if the renderer is trying to draw an object, while the physics thread is trying to delete it, which is obviously bad, but does not happen very often. I have taken every precaution possible only using simple signals and loops. Personally I think mutexes are very annoying and are only good for really dangerous or sensitive operations, which I have yet to use.

And as for making an actual game, that is a long ways off. I have yet to implement any sort of useful model loading routines, also the renderer is way to slow when handling transparent triangles. Unless I make a game with really "bad" graphics(see above), right now allit can really do is "amazing" particle physics on the processor. :(

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Wed Mar 07, 2012 9:00 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Finally got render to texture working :thumbs

Image

So this is what is happening, there are two "scenes" , actually simulations, that are being rendered. The main scene, that renders all the simulations that are not bound to a micro-rendering object. Then there are the micro-rendering objects that have "captured" simulations that they draw, with there own custom lights and camera and what not, but instead of being rendered to the screen, they are rendered to an OpenGL texture pointer, which can then be used on any other object anywhere, though here it is being transparently pasted on top of the rest of the scene. And yes the rainbow sphere is a rendering of the Mandelbrot set.

Also this screenshot was taken in single threaded mode, with time regulation disabled, on a 1GHz processor, at ~33fps, no hardware acceleration. :geek

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Sun Apr 01, 2012 5:37 am 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Image

just got animation to work, with my rendering system and my physics engine wahoo! :thumbs but at 10 fps :(

that took a month

the monster thing is from psionic3d.co.uk

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Sun Apr 01, 2012 12:40 pm 
Grand Optimizer
User avatar

Joined: Mon Jan 17, 2005 6:01 pm
Posts: 352
Location: Canada
Nice spider-thing! 10fps? Ouch!

_________________
"None are more hopelessly enslaved than those who falsely believe they are free."
"It is no measure of health to be well adjusted to a profoundly sick society."
"Hope is the first step on the road to dissapointment." -Jonah Orion
http://tankzgame.blogspot.com


Top
 Profile  
 
PostPosted: Sun Apr 01, 2012 5:08 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Meneliki wrote:
Nice spider-thing! 10fps? Ouch!


I did not make the spider thing, because I did not want to spend all of my time making a good animation, instead of actually getting animations to work. Yes 10 fps, can go up to 15 that I've seen. When multi-threaded the framerate drops to about 5 fps, but the rendering, script and physics threads are unimpeded by one another so the script thread takes up the majority of the processing time, for it is the fastest to calculate a loop, physics is a flops hog so it needs a lot of cycles, which leaves the renderer virtually nothing, which is ok, since the renderer only updates the state of the engine instead of driving it. that probably made no sense, but that is the best way I can explain my engine. :geek

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Tue Apr 10, 2012 8:06 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
10 fps no more!, 14 fps now, just some silly c++ correctness sped it up (allot of "const type& id" instead of "type id", really sped it up :thumbs )

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Wed Apr 11, 2012 6:41 am 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
now up to 18 fps average, reduced number of OpenGL calls, dramatic speed increse.

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Wed Apr 11, 2012 4:38 pm 
Super-dooper pooper scooper
User avatar

Joined: Tue Oct 11, 2011 8:08 pm
Posts: 170
Now get it up to at least 50 fps. :evil


Top
 Profile  
 
PostPosted: Wed Apr 11, 2012 5:42 pm 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Quote:
Now get it up to at least 50 fps. :evil
my current goal is 25, then I could possibly double that, but on a 1GHz processor that is a streach :x .

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Fri Jun 15, 2012 5:23 am 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Haven't posted in a while, been studying for exams.
I have implemented too many features, but here are the ones that I can name of the top of my head:

* Wavefront obj/mtl rudimentary file loader
* collision, step, and selective collision filtering callbacks
* keyboard press/release callbacks, general or specific to an object
* fixed fps counter
* fixed fps regulator
* animation sets
* infinitely extendable custom object file format
* object selection (using an article on gpwiki 8) )
* made game archive file loading more transparent for nested archives, as well as more robust, and highly expandable
* made the internal option constants transparent to the scripts
* more robust transparent geometry algorithms

it does not look any different but it runs smother and crashes less often, and I even managed to squash some bugs :thumbs
also made the default texture filter to mipmaped, looks a bit like the games that came out around 2000. :geek

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Fri Jun 15, 2012 6:28 am 
Source Code Swashbuckler
User avatar

Joined: Wed Nov 09, 2011 3:58 am
Posts: 199
Location: Brazil
You should blog this. :)

_________________
"Life finds a way." - Ian Malcolm
My WebBlog: PixelDeveloper
English is not my native language, so excuse me for any writing mistakes.


Top
 Profile  
 
PostPosted: Fri Jun 15, 2012 6:40 am 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
FelipeFS wrote:
You should blog this. :)


How so?

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
PostPosted: Fri Jun 15, 2012 6:45 am 
Source Code Swashbuckler
User avatar

Joined: Wed Nov 09, 2011 3:58 am
Posts: 199
Location: Brazil
Create a blog(wordpress or blogspot).
It is good to make new people know about your project, and it is also a good way to organize your goals.

_________________
"Life finds a way." - Ian Malcolm
My WebBlog: PixelDeveloper
English is not my native language, so excuse me for any writing mistakes.


Top
 Profile  
 
PostPosted: Fri Jun 15, 2012 6:50 am 
Gamer Geek
User avatar

Joined: Sat Feb 25, 2012 7:07 pm
Posts: 29
Location: California
Thanks ...
FelipeFS wrote:
It is good to make new people know about your project, and it is also a good way to organize your goals.

meeting new people is useful, as for goals ... I'm just making it up as I go along ... and have done so for four years on this project :thumbs

_________________
It's not truly yours, until you void the warranty.
Most of my problems: "I can fix that! ... oops".


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 19 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group