Feature Requests

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
Caecus
Posts: 36
Joined: Fri Aug 22, 2003 6:33 am
Location: California, USA

Feature Requests

Post by Caecus »

Here is a culmative listing of the feature requests from the old board. I'm sure I missed some so feel free to add them. I decided importance based on a few things.

1) How soon is it needed? Something that is crucial to the early design/development of a game gets a higher importance than something that can be "tacked on" later.
2) How hard is it to add? We all know Niko is busy and has his own plans for what he is going to be adding to the engine. So features we request must also be reasonable for him to add. Things that I thought would require alot of time got slightly lower importance simply because its unreasonable to demand such things :)

REQUEST: 32bit Indices
IMPORTANCE: Low
COMMENT: These would be nice for prototyping without having a map partioning system built. (ie allowing you to "throw" a huge raw heightmap at the engine)

REQUEST: MD2 Size
IMPORTANCE: Moderate
COMMENT: I haven't had time to mess with 0.3 much at all. But I'm pretty sure the MD2 meshes are still taking up a 4-5 times more memory than necesary. I know its not an easy things to fix, because of the way the irrlicht is laid out, but I think its needed in the long run.

REQUEST: 8bit Alpha Support
IMPORTANCE: High
COMMENT: I ranked this of high importance because I feel its a crucial part of design. The use of 8bit alpha channels for texture blending on terrains is important IMO.

REQUEST: Shaders
IMPORTANCE: Moderate
COMMENT: A very powerful feature, but one that will most likely require a good deal of work. Thats why I put it as moderate.

REQUEST: Fog
IMPORTANCE: Moderate
COMMENT: Useful (if abused) effect. Hard to find a game these days that doesn't use atleast a little fog. Far better than letting the Far plane saw off you distant mountains :)

REQUEST: Directional Lighting
IMPORTANCE: Moderate
COMMENT: I tried using point lights to do some simply lighting on my outdoor enviroments, but they just didn't seem to be what I wanted. I think directional lighting would be better.

REQUEST: Projective Texturing
IMPORTANCE: Moderate
COMMENT: We've all seen the cool effects it can produce, some sort of easy to use Projective Texturing would be great.

REQUEST: Occulsion Culling
IMPORTANCE: Low
COMMENT: HArd to do, but definintly and great feature to have. Even if it doesn't get added until after 1.0.

REQUEST: Frustrum Checking
IMPORTANCE: Moderate
COMMENT: A way of telling whether or not a 3d Node is in a given camera frustrum. This would be helpful in networked games by limiting data sent back and forth.

REQUEST: Follow Camera
IMPORTANCE: Low
COMMENT: A simple Follow/Third Person Camera included with engine would be an easy enough addition when there is time.

REQUEST: 24bit Textures
IMPORTANCE: Low
COMMENT: Nothing urgent about this, but it certainly would be good to have a full range of options when it came to texture color depth.
Last edited by Caecus on Sun Aug 24, 2003 7:38 pm, edited 1 time in total.
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

Thanx for posting the list. Some of the features are already implemented in my version here, for example MD2 Animations by Name and Trilinear filtering. I am also doing something on the OnPost- and OnPreRender issue refactoring the whole ISceneNode class. It'll be a lot easier to use: For example there won't be the RelativeTransformationMatrix any more, instead it uses 3 vectors for storing the Relative position: translation, rotation and scale. In this way it's now easy for example to retrieve and change the current rotation.
Caecus
Posts: 36
Joined: Fri Aug 22, 2003 6:33 am
Location: California, USA

Post by Caecus »

Sounds good, I'll try to update the list as new requests come in and new features are add. Just Post them here and I'll edit the original.
Raumkraut
Posts: 31
Joined: Fri Aug 22, 2003 9:41 am
Location: The North, UK

Post by Raumkraut »

irrlicht wrote:For example there won't be the RelativeTransformationMatrix any more, instead it uses 3 vectors for storing the Relative position: translation, rotation and scale. In this way it's now easy for example to retrieve and change the current rotation.
That's some serious wootage, right there. :D
rogerdv
Posts: 93
Joined: Wed Aug 27, 2003 4:20 pm

Post by rogerdv »

What about handling camera? There will be some way to change camera position without reimplementing the whole class?
Also getting a submesh from a model by name and play animation by name for 3ds files? I dont know if md2 files can be used for commercial projects.
saigumi
Posts: 921
Joined: Fri Aug 22, 2003 11:31 am
Location: St. Louis, MO USA
Contact:

Post by saigumi »

You can move the camera

Code: Select all

//cameraPointer->setRelativePosition(irr::core::vector3df(Xf,Yf,Zf));
camera->setRelativePosition(irr::core::vector3df(-1.0f,10.0f,0.0f));
Features I'd like (which I think are already in the works but may as well have them documented)

Being able to find a node's pointer by it's unique ID

Code: Select all

irr::scene::ISceneNode* GetNodePointerByID(irr::u32 nodeID){
  //Psuedocode
  for (each node in scenenodes){
     if (scenenode.ID = nodeID)
      return scenenode.pointer
  }
 return 0;
};
Crud, how do I do this again?
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Post by niko »

rogerdv wrote:There will be some way to change camera position without reimplementing the whole class?
As saigumi said, it is already possible. I refactored a lot of the engine, and its easier in the next release: There will be a ISceneNode::setPosition(). :)
saigumi wrote:Being able to find a node's pointer by it's unique ID
I'll add this. But you know, the Id of the scene node need not to be unique.
Cleves

Post by Cleves »

An edit box will be usful.
saigumi
Posts: 921
Joined: Fri Aug 22, 2003 11:31 am
Location: St. Louis, MO USA
Contact:

Post by saigumi »

I guess if they aren't unique then making a list of objects with that name would be cool.

Until you said that I was just returning one SceneNode in my function, now I changed it to return a list. While I'm doing it by hand myself already, it just seems like something that might be helpful as part of the base product.
Crud, how do I do this again?
[dx/x]=HUNT3R
Posts: 271
Joined: Sat Aug 23, 2003 5:52 pm
Location: Hurricane Central, Florida

Post by [dx/x]=HUNT3R »

How about some FOG!!! :(
[dx/x]=HUNT3R
Posts: 271
Joined: Sat Aug 23, 2003 5:52 pm
Location: Hurricane Central, Florida

Post by [dx/x]=HUNT3R »

And some LENS FLARES!!! 8)
Raumkraut
Posts: 31
Joined: Fri Aug 22, 2003 9:41 am
Location: The North, UK

Post by Raumkraut »

Lens flares == billboards, n'est pas?
puh
Posts: 356
Joined: Tue Aug 26, 2003 3:53 pm

Post by puh »

What about bump-mapping?
And monitor refresh rate setting?
[dx/x]=HUNT3R
Posts: 271
Joined: Sat Aug 23, 2003 5:52 pm
Location: Hurricane Central, Florida

Post by [dx/x]=HUNT3R »

Raumkraut wrote:Lens flares == billboards, n'est pas?
Yeah we can make em with billboards but aren't lens flares usually built into an engine...?

But that bump mapping and refresh rate setting would be nice too if we could get all the possible refresh rates from the system.
Zaelsius
Posts: 38
Joined: Sat Aug 23, 2003 12:02 pm
Location: Alicante, Spain
Contact:

Post by Zaelsius »

Nicest and more reallistic lens flares are done trough a pixel shader. I suppose a simple bill-boarded lens flares is not a big effort for someone who really needs it... I dunno if its used to be considered as a engine or game feature ¿?
Post Reply