My Pyhton Game

38 views
Skip to first unread message

BirdaoGwra

unread,
Nov 12, 2009, 12:29:06 PM11/12/09
to PYGGEL-dev
Hi,
I have a question to ask to the developers of the Pyggel. I and my
friend are going to make a Python RTS/RPG style game. For that I have
choosen some lib to use in. Since your Game Engine is made with the
purpose of game making, so, I am thinking I will start my game with
Pyggel. So, my question is, Is it possible to make a RTS game with
Pyggel? Since your motto is to make a FPS game engine, thats why, I
thought I should ask it to you before starting to code.
I will also use some other libs from the PyGame.org. So, could you
kindly give me some advice/idea how to use your Pyggel to make the
game?
And ya, could you kindly make the FPS camera rotate on x axis
(robocalipto) and increase the speed a little bit. I felt as if
someone is holding my head:-). Otherwise, It is awwwwsome(Now I am
thinking I sould make a FPS game or future planning).

Regards

RB[0]

unread,
Nov 12, 2009, 1:39:18 PM11/12/09
to pygge...@googlegroups.com
Robocalypto is rather outdated, unfortunately, so probably won't have many more updates before a complete rewrite for speed, so we will definitely try and increase speed/freedom :)

PYGGEL is a general 3d engine, it is great for FPS for several reasons but it was actually designed originally for a turn-based game.
But, 3d is not extremely easy for rts games, reason being that you have to know what you are doing really well to make things go fast enough.
And several things in pyggel are not quite up to speed as yet, such as animation and such - so I wouldn't recommend using pyggel unless you have good experience with Python and 3d already.

If you wish to continue with the 3d concept we will try and provide some pointers for you :)

BirdaoGwra

unread,
Nov 12, 2009, 6:43:37 PM11/12/09
to PYGGEL-dev
Hi,
Thanks for reply.
Well, I did not mean speed by the engine speed, I meant the walk
speed of the character ;-). It seems that the speed of Robocalypto is
O.K.
Ofcourse RB, I would like to know any advice or idea you can give
me, I will really appreciate that. Thats why I joined you before doing
anyhting. Right now I what I want to know is;
1. When will you implement vertex animation(or X file)?
2. Does it support multitexturing?
Actually I don't want to finish the game just in a month or two. I
targeted 1-3 years to make this game or if neccessary more than that.
I don't want any high shader effects in the game. It will be simple
low poly(as much as possible) RTS game.

Thanks
Regards
> >  Regards- Hide quoted text -
>
> - Show quoted text -

Ian Mallett

unread,
Nov 12, 2009, 10:38:01 PM11/12/09
to pygge...@googlegroups.com
On Thu, Nov 12, 2009 at 3:43 PM, BirdaoGwra <b_g...@yahoo.com> wrote:
I don't want any high shader effects in the game. It will be simple
low poly(as much as possible) RTS game.
Shader effects don't need to be complicated.  I often use them to just color objects one color, without worrying about state calls elsewhere.  They can often make your life easier; for example, a vertex shader could animate a single, static display list or vbo.

I'm not sure what you mean by "3d is not extremely easy for rts games".  I'm sure PYGGELs can handle 2d views (just a matter of a different projection matrix).  Do you mean pure PyGame, perhaps?

Ian

RB[0]

unread,
Nov 12, 2009, 10:55:33 PM11/12/09
to pygge...@googlegroups.com
Ian - yes I mean pure Pygame, but even doing 2d in OpenGL is more complicated than in Pygame, probably more complicated than 3d in OpenGL ;)

Bird - shaders are intended for a later release, but as yet are unsupported - so that is good for you that you don't need/want them.
Multitexturing is not yet supported (hadn't really thought about, but definitely possible, will look into adding it)
Vertex animation - I'm really not sure. Python itself is probably too slow to handle that sort of thing, and I'm not sure I want to keep a C extension library working :S
You could use shaders (as Ian suggested) - but I doubt they would be an ideal solution, dunno though :S

Currently I am working on a huge rewrite of several features that will include a lot more features, and I will see about getting those in.
If you are interested in helping out with it, or have more ideas for things to add, let me know - we're trying to make PYGGEL as good as possible, and ideas like yours help tremendously :)

Ian Mallett

unread,
Nov 12, 2009, 11:28:51 PM11/12/09
to pygge...@googlegroups.com
On Thu, Nov 12, 2009 at 7:55 PM, RB[0] <roe...@gmail.com> wrote:
2d in OpenGL is more complicated than in Pygame, probably more complicated than 3d in OpenGL ;)
Yes, 2D OpenGL is more complicated that PyGame.  However, in my experience, 2D OpenGL is simpler than 3D OpenGL. 

Although the architecture is the same, 2D is one dimension fewer of consideration you need when designing your scene.  For example, with 3D, you need a camera, positions, near/far clip planes, etc.  In 2D, the pixels correspond directly to texels, and there's no inverted y-axis like in PyGame.  To mimic the ordering PyGame draw order provides, you can set the depth test to replace on <=. 

3D requires more to get a good scene because of the extra dimension--but really, 2D and 3D OpenGL are the same (differing only in the projection matrix: gluPerspective vs. glOrtho/gluOrtho2D).

If you're not too familiar with PyGame, I recommend sticking with it and not using OpenGL.  You can challenge yourself with 2D or 3D OpenGL if you're really good with PyGame. 

Ian

BirdaoGwra

unread,
Nov 13, 2009, 7:38:28 AM11/13/09
to PYGGEL-dev
Hi
Now I am confused. Problem is I am not comfortable with 2D sprites
(not as programmer, as a artist), but rather comfortable with 3D
designing. Thats why I grabbed 3D to make a game.
Regarding multitexturing, I m thinking that, it would be good
enough if I get some feature in a single lib, rather than combining
some couple of libs to get a single result :-). whitout it, a map will
not be possible to load.
About animation, whether it is RTS or FPS, every game needs
animation. I think you should start thinking about this to implement
in your engine :-P.
I think I only need some basic features to make a game. Let me tell
you;
1. Multitexturing(to load a map, sometime a character also made with
multitexture)
2. Animation (if possible vertex animation, skeletal animation is a
little complicated, but good for FPS games)
3. Collision(based on bounding box or add a node(cube,shpere) to
calculate collision with gravity)
4. Node picking
5. Terrain

Some others are;
1. Billboarding
2. Texture animation
3. Particle Effects
4. Node Hierarchy(Parent and Child)
5. GUI(for HUD)

well, these are the basic requirement that a game maker may wish
from a game engine. With these, it is possible to make a playable
game. Pyggel already has most of the features I mentioned. You only
need to implement some of them.

Regards

On Nov 12, 8:28 pm, Ian Mallett <geometr...@gmail.com> wrote:

RB[0]

unread,
Nov 13, 2009, 11:31:36 AM11/13/09
to pygge...@googlegroups.com
Well, you can always design your characters in 3d and convert them to 2d sprites pretty easily - I've done that with great results.
As far as animation, there is a skeletal animation library (though it is experimental and very slow, so not good for rts, maybe fps) - and a new version should ship when we make a new release that will be better.

I agree it is generally better to have a single lib that can handle your needs than a bunch...

What do you mean by node picking? We have a very nice picker in pyggel - but it can only pick individual GL objects, so a geometric objects, mesh or something, so make sure your terrain is split up in a grid (that is one of the difficulties I mentioned with an RTS for pyggel, we don't have a geometric picker ;) )
There are collisions (bounding box and sphere) - but no physics, we are hoping to integrate ODE soon for that ;)

BirdaoGwra

unread,
Nov 13, 2009, 2:54:33 PM11/13/09
to PYGGEL-dev
Well, now I will try and see whether Phython and its library can load
my maps!!! Its low poly but much huge. For that I have to use Ians
openGl libs(and for some effects like water). And for other staff I
will use Pyggel.
.obj file is a very common file. if possible kindly add another file
loader which is rare and not readily available to the end users.
Did you write any document regarding Pyggel?

Regards
> > > Ian- Hide quoted text -

RB[0]

unread,
Nov 13, 2009, 2:57:59 PM11/13/09
to pygge...@googlegroups.com
We have discussed adding other map formats, so far haven't - the only reason I can see doing it would be to include some sort of animation, otherwise what benefit would it be to support some rare one?
Yes, for large maps PYGGEL is not yet ready - next version will support vertex buffers which fixes that issue though.
One thing, if you are loading your map as a single mesh object - then picking it will be very difficult, whether with pyggel or Ian's lib - how will you handle that?

There is some documentation in the form of doc-strings available, mostly complete...

BirdaoGwra

unread,
Nov 13, 2009, 3:20:58 PM11/13/09
to PYGGEL-dev
well, I mean the terrain. it is designed in my 3d editor :-). I am
not going to programme some code to create the terrain.
Since it will be a RTS/RPG style game, so strategy is not only my
motto.

animation, ya it is very important. kindly think about this before
thinking about anything else.

and, i will be waitting.

regards
> > > - Show quoted text -- Hide quoted text -

RB[0]

unread,
Nov 13, 2009, 3:27:41 PM11/13/09
to pygge...@googlegroups.com
Regardless, if you are going to be doing point and click, to move units you have to figure out where you are pointing to...
And I will - thx again, probably given me teh biggest push in a direction to continue development in a while :)

BirdaoGwra

unread,
Nov 13, 2009, 3:37:33 PM11/13/09
to PYGGEL-dev
Well, I choesd to model it on 3D application, just becouse of texture
splatting. otherwise this a terrain scene node;-)

BirdaoGwra

unread,
Nov 13, 2009, 3:48:34 PM11/13/09
to PYGGEL-dev
And another reason is, lake, pond or rivers. in brief the water. So
that I can place water manually wherever I want and than apply the
effect in python. like a game map editor.
Reply all
Reply to author
Forward
0 new messages