BGE needs for Zaghaghi and Ovidiu

thank you for your interest in BGE development, i’m working in 2d-filter bug-fix, you can create a thread about BGE needs, then i, and ovidiu, can make a roadmap for our works

They said I could do this, so I will. What do you think are the immediate needs for the BGE that need to be high priority for Zaghaghi and Ovidiu?

My thoughts.

-Fix various BGE bugs (solid radar sensor, added object ghost bug, memory leaks, static-static collision ect…)
-More efficient culling system for collisions and faces rendered.
-Possibly a save/load logic brick or python function
-Restoration of parent to bone

I say bugfixes for things like with added objects and logic bricks because bugfixes of certain types are needed
I say the second thing because it allows more detailed scenes at higher framerates
I say save/load at least as a python function because this could be very useful for things like checkpoints ect…
I say parent to bone because this actually was in the BGE in the past, it would be nice to have this restored.

As much as I’d like fancy graphics some would say it shouldn’t be top priority until we get the major GE bugs fixed and more efficient visibility and collision culling to make more frames available for fancy graphical effects.

Stuff from this thread.

BUGS:
MINE AND KIRADO’S LIST OF BUGS:
-Fix Memory leaks
-Fix Broken Logic Bricks (or ones not working right (Near, Track to, Radar))
-Physics engine bugs eg. ghost/add object problems etc

REIKO’S MEMORY PROBLEMS
But there are 3 major problems in BGE that should be removed:
a) Memory leaks when you set a new scene in BGE. (http://www.pharcom.ic.cz/apps/RAM_Problem3.blend)
b) Memory leaks when you restart game in BGE.
(http://www.pharcom.ic.cz/apps/RAM_Problem.blend)
c) Memory leaks when you add an overlay (background) scene in BGE.
(http://www.pharcom.ic.cz/apps/RAM_Problem2.blend)
These 3 problems are seen mainly in complex scenes and I havent found any cure yet (maybe gc module in PYTHON?).

a) If you set a new scene (example: www.pharcom.ic.cz/apps/RAM_Problem3.blend)
b) If you restart a scene (example: www.pharcom.ic.cz/apps/RAM_Problem.blend)
c) If you add an overlay/background scene (example: www.pharcom.ic.cz/apps/RAM_Problem2.blend)
d) If you start a new game (example: www.pharcom.ic.cz/apps/RAM_Problem4.rar)
e) If you add an object to the scene (example: www.pharcom.ic.cz/apps/RAM_Problem5.blend)


FEATURES:
MY SUGGESTED ROADMAP:
Here’s the suggested order of things I would say.
3: Do sound system
4:Visibility and collision culling
5:Save/load system
6:Particles
7:Full GLSL
8:GLSL Logic bricks

KIRADO’S SUGGESTED ROADMAP (in no particular order)
3:sound system

…then better graphics obviously… but here’s my wishlist in no particular order

  1. full implementation of GLSL so we can do cool reflections etc.
  2. if can get the collision co-ordinates for rigid bodies so we can add in particle objects eg. objects emitting sparks from the collisions while the slide or collide with a surface.
  3. Being able to stop an object using the physic engine. I.E being able to control linear and Angular velocity so we can remove forces from rigid bodies
  4. Realtime bones! :wink:
  5. Realtime deformations.
  6. eventually a web plugin… long shot there.
    7.dynamic parenting.
  7. better control to loop/play animations/movies on surfaces in the game engine

ANICATOR’S VERSION OF A ROADMAP (bugs already listed)

  • Visibility and Collision Culling
  • Full support for GLSL
  • Particles ‘Component’
  • Save/Load System
  • (I ignore your GLSL Logic Bricks thingy)
  • Sound SystemLARRYBOY’S SUGGESTIONS
    LOD for terrains
    Video like in NeuroVR (coz I can’t get Ashsid thing to work any more)

KAWE’S LOGIC BRICK SUGGESTIONS
One that I can come to think of is a “change global game stuff” (gravity, mist etc. etc) during runtime.

It’d be nice with a better way to keep track of logic bricks too. It gets pretty crazy when you have more than 5 bricks. Sure you can close and open them but that doesn’t help much. Being able group them together would be awesome… and have a list of groups that I can look at.

Chaining logic bricks would be cool too so I could have a chain of actuators that would go like…

create object A
wait 1000ms
create object B
play sound sA

this would keep things a lot cleaner

B0MBERMAN’S LOGIC SUGGESTION
It would be nice if the BGE was reprogrammed in a way where LogicBricks could be added dynamically by C programmers. This way you wouldn’t have to learn everything about the BGE to add a logic brick yourself.

This way if you really wanted a logic brick, you could just program it instead of waiting around. Also someone could create a database with all known logic bricks and people could upload/download their own.

Obviously the quality of the LogicBricks will be affected by the level of the programmer, but you could fix that with a rating system

POCHO’S SUGGESTION FOR NEW VISUAL SCRIPTING SYSTEM
like the UNREAL ENGINE 3:

http://www.unrealtechnology.com/screens/kismet_2.jpg

OR LIKE VIRTOOLS:

http://greggman.com/games/Virtools-Review/figure6.gif

http://www.translucency.com/volcanoracer/script.gif

MMPH!'s (LONG) LIST OF SUGGESTIONS
OGG audio and video…
LOTS of work on the sound system in general., allow us to assign which object is the listener for the 3d sounds…

As far a additional graphic things… Foliage that can be parented to a terrain. Paging terrain system, Volumetric fog, HDR lighting for GI…

A new text system that allows us to poke and peek charictors on the screen,or on a surface, TTF font support would be nice too, So we dont have to reverse engineer TTF fonts into bitmaps!!(or perhaps a way that makes the old blender font bitmaps, but it copies over the original fonts meta data and prints it to the bitmap so the author gets credited)

GLSL access from blender material system for simple parallax,normalmap,Cube reflection, TOON shader, and some simple liquids.

Perhaps a script to auto UV map and bake a lightmap, to a scene.

A mouse logic brick for mouse movement.

Volumetric clouds, fog and liquids.

Ragdoll collision for armatures.

A way to use global variables from logic brics…

Save and load property to a text file logic brick. (Save and load system?)

way to assign a collision hull to a static mesh, somewhat like the unreal 2004 system.

Screen shot logic brick.

Real time stencil shadows that are aware of alpha masked materials, with a nice falloff.

Some way to color code teh logic bricks so we can organize and bug hunt easier .

LOD system for meshes.

flipbook trees.

Emitter / particle system.

Volume system so we can do water, and low gravity zones easier.

Freame work for a simple AI system from logic bricks, to make path following and , path finding easier on non-python users.

Enhance the Joystick, mouse and keyboard blocks, so we can expand them for combinations easier… the way it is now it is very hard to use the OR controller with key and mouse and joy combinations.

Default properties in the random and joystick bricks, so that they work by default.

mirror reflection for materials, like Quake3 and unreal,unreal 2003-4…

Some way to promote a mesh into a decal… so it automatically matches the angle of the face it gets drawn on. (somewhat like the shadow does now, only for walls, and ceilings.)

Texture projectors like unreal 2004, so we can project a texture onto multiple meshes.
(great for shadows, and caustic effects)

A quest system like Crystalspace CEL, only make it in logic bricks that saves and loads.

make so we can send messages to all existing background and overlay scenes (I Think this is a bug)

More choices on culling… perhaps a portal system, and an antiportal system like unreal 2004

On the mouse logic bricks, an option to turn the mouse on and off without a 2 line $#%^ing script.

easier ways to make custom mouse pointers.

animated texture system!! with a choice of Frames (normal animation), Panning, Scaling , Oscillating,Rotating, warping… etc…

A bloom effect.

Errors in the console more verbose, and in English

Dynamic parenting to a single bone in an armature, for pickups and specisl effects (emitters and stuff)

Integrate COLLADA library so we get Rag dolls, and all the other goodness that comes with it.

Integrate a Text to speech system like half life 1. E speak is pretty cool and free :smiley:

Better runtime exporter… let use choose a Icon, the description, the meta data, and make ti so that we dont have to save the runtimes in the default BLENDER folder. have it copy the DLL files over to whatever directory we want to save in.

Make so that runtimes can dynamically load Textures and sounds so we dont need to pack them

LSBLEND’S SUGGESTIONS
an option to delay in the controller, so that u dont have to set up a complicated timer set up

for example:
keyboard sensor outputs to controller when user presses button
controller waits 50 logic ticks
actuator moves object

OGG file support , more graphical issues fix (like alpha over alpha , i know it can be solved with Ztransp sometimes , but sometimes it doesn’t … :frowning: )
and some new logic bricks …
and make blender handle more vertecis and polys than it have
maybe a real refraction material …
cheers

I agree with you Drake (May I call you Drake?), as long as it won’t make them abandon the 2d filters XD

I think that some kind of sound support must be added, be it .ogg , .mp3 , .mp4 etc… Really smashes my ideas when I can’t have sound :frowning:

The 2D filters are very nice and all and they’re free to fix bugs related to those, but before we ask for more fancy graphics, we need to get major bugs fixed and visibility/collision culling that would benefit people who wish to add fancy graphics because more frames will be available.

OGG or MP3 support should also be near the top, as it will greatly reduce game filesize, alpha bugs would go in the bugfix section

and some new logic bricks …

I’d ask you tell us what you want the new logic bricks to do. I read in another forum POCHO’s working on an AI system for the BGE, so we can let him implement that and Zaghaghi and Ovidiu work on the other things.

BlendX! We need BlendX!

:stuck_out_tongue_winking_eye:

Change materials on the fly with logic bricks or IPOs
LOD for terrains
Video like in NeuroVR (coz I can’t get Ashsid thing to work any more)
Please Please Please
but thats just my opinion

It wouldn’t hurt to also have multiple IPO’s per object, but you’d probably need a dev. outside the BGE to develop that.

Meanwhile you could develop a feature that would allow BGE IPO positions to be relative to that of the start coordinates of the object.

I don’t want to see ANY new features added until all the features we already have are working without a hitch.

I agree with PlantPerson. We should make BGE (as it is) better before we add new things to it. I say improve our logic bricks system: Help the Near Sensor work without slowing things down, The Track To Actulator bug, etc. Then we can start working on new things. :eyebrowlift:

Probably a good idea to get the memory leaks and major bugs with the logic bricks and added objects be high to first priority. As well as the culling I mentioned before.

I think more and better logic bricks. One that I can come to think of is a “change global game stuff” (gravity, mist etc. etc) during runtime.

It’d be nice with a better way to keep track of logic bricks too. It gets pretty crazy when you have more than 5 bricks. Sure you can close and open them but that doesn’t help much. Being able group them together would be awesome… and have a list of groups that I can look at.

Chaining logic bricks would be cool too so I could have a chain of actuators that would go like…

create object A
wait 1000ms
create object B
play sound sA

this would keep things a lot cleaner

Hi all. If someone should anything add, it is sound support for other formats.
But there are 3 major problems in BGE that should be removed:
a) Memory leaks when you set a new scene in BGE. (http://www.pharcom.ic.cz/apps/RAM_Problem3.blend)
b) Memory leaks when you restart game in BGE.
(http://www.pharcom.ic.cz/apps/RAM_Problem.blend)
c) Memory leaks when you add an overlay (background) scene in BGE.
(http://www.pharcom.ic.cz/apps/RAM_Problem2.blend)
These 3 problems are seen mainly in complex scenes and I havent found any cure yet (maybe gc module in PYTHON?).

  • Sound system
  • Memory leaks
  • Broken Logic BricksI can code around broken logic bricks, but I can’t code around the poor sound support or the memory leaks.

Also, I like efforts made to speed up and improve the graphics. Please remember those of us with older graphics cards, though. I use an Intel D815 integrated chipset, and it would not be able to support the BGE if the newer OpenGL features were required for even basic functions. This is the extent of my graphics card OpenGL capabilities:

Detected GL_ARB_texture_env_combine
Enabled GL_ARB_multitexture
Detected GL_EXT_separate_specular_color
GL_VERSION: 1.2 (1.2 Mesa 6.5.2)

-Sounds system
-broken logics brick
-memory leak

  • being able to get access to bones (dont counfound with armature there, and im not talking of action there, more like, parenting something to ONE bone in the aramture and make it dynamic, or being able to track one or more bones to one point or object)

I think that, for Zaghaghi will not much time to do this, because he started coding the Volumetric Cloud for Peach project.

I have time do to it, after volumetric cloud, but we need a roadmap for GE, for those people who wants develop BGE

interesting - tell us more…

thanks Zaghagi! I think the following should be fixed before new features are added.

1:Memory leaks
2:Broken Logic Bricks
4: physics engine bugs eg. ghost/add object problems etc
3:sound system

…then better graphics obviously… but here’s my wishlist in no particular order

  1. full implementation of GLSL so we can do cool reflections etc.
  2. if can get the collision co-ordinates for rigid bodies so we can add in particle objects eg. objects emitting sparks from the collisions while the slide or collide with a surface.
  3. Being able to stop an object using the physic engine. I.E being able to control linear and Angular velocity so we can remove forces from rigid bodies
  4. Realtime bones! :wink:
  5. Realtime deformations.
  6. eventually a web plugin… long shot there.
    7.dynamic parenting.
  7. better control to loop/play animations/movies on surfaces in the game engine.

I vote for this list too.

I agree with the bugfixes and speed improvements to be first priority. Something I’d like to add (although its more of a physics thing maybe) would be the ability to change the shape/size of a collision bound in realtime.