Forecast-site Model Instancing???

Posted By: Benni003

Forecast-site Model Instancing??? - 12/08/10 11:12

Hello JCL,
I visited the Forecast-site and I was looking to The New Engine Features. I was very wondering, because Model-Instancing was not listed there. What happened? Will Model-Instancing never release now? frown
Posted By: Slin

Re: Forecast-site Model Instancing??? - 12/08/10 11:25

I consider instancing overrated anyways... Or I don't get what it is about. Or both. I am not sure wink
However, what is the difference between OpenGL vertex buffer objects and instancing?
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/08/10 13:08

Hi Slin,
ich weiß leider nicht was du mit OGL vbos meinst, bzw. was das ist.
Jedenfalls war bis vor kurzem noch Modell-Instancing bei den Neuen Engine Features aufgelistet, welches für mich sehr interessant ist.
Jetzt bin ich ein bisschen erschrocken, dass sie es herausgenommen haben.
Posted By: Pappenheimer

Re: Forecast-site Model Instancing??? - 12/08/10 17:36

Und ich dachte, die mit der A8 kommende "crowd.c" wäre die Visualisierung des Instancing...
Posted By: HeelX

Re: Forecast-site Model Instancing??? - 12/08/10 17:41

Originally Posted By: Pappenheimer
Und ich dachte, die mit der A8 kommende "crowd.c" wäre die Visualisierung des Instancing...


Nein, das ist für GPU-beschleunigte Bones-Animation smile
Posted By: Pappenheimer

Re: Forecast-site Model Instancing??? - 12/08/10 17:48

Ach guck, wieder etwas verwechselt! tongue
Posted By: ventilator

Re: Forecast-site Model Instancing??? - 12/08/10 17:54

Originally Posted By: Slin
I consider instancing overrated anyways... Or I don't get what it is about. Or both. I am not sure wink
However, what is the difference between OpenGL vertex buffer objects and instancing?
i am not sure either but i guess instancing means that the rendering of several objects gets grouped into a single draw call.
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/09/10 12:56

Ja, Modell-Instancing wird verwendet, um mehrere Modelle mit gleichem mesh in einem einzigen draw call zu rendern.
Eine Sache, die sehr nützlich ist, besonders wenn man viele entities in einem Level hat. Aber warum ist Modell-Instancing nicht mehr aufgelistet?
Posted By: Logitek

Re: Forecast-site Model Instancing??? - 12/09/10 14:29

Besonders für Vegetation ist Model Instancing wichtig. Leider seit etwa 2 Wochen nicht mehr beim Forecast gelistet.
Posted By: HeelX

Re: Forecast-site Model Instancing??? - 12/09/10 17:26

Originally Posted By: Logitek
Besonders für Vegetation ist Model Instancing wichtig. Leider seit etwa 2 Wochen nicht mehr beim Forecast gelistet.


Dafür gibts doch die tollen neuen gekreuzten Sprites grin Nein, also ich finde das auch nicht so glücklich, dass im Forecast in letzter Zeit häufiger elementare Features gestrichen werden. Vor allem kommentarlos... frown
Posted By: Nowherebrain

Re: Forecast-site Model Instancing??? - 12/09/10 17:40

I agree....
Posted By: rojart

Re: Forecast-site Model Instancing??? - 12/09/10 22:09

d3d_instancing function for Sprite instancing is already implemented (A8 Pro Only), but for Model instancing is not yet supported at the moment.

Anyway, I think that Model instancing will be added soon, maybe.
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/26/10 20:18

Originally Posted By: rojart
d3d_instancing function for Sprite instancing is already implemented (A8 Pro Only), but for Model instancing is not yet supported at the moment.

Anyway, I think that Model instancing will be added soon, maybe.


I hope... I'm not happy that JCL does't say anything about this.
Posted By: jcl

Re: Forecast-site Model Instancing??? - 12/27/10 10:03

Model instancing was implemented some months ago, but never made it into a release. We found that the speed gain in normal levels was too small for being a useful feature.
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 10:29

Thanks jcl for telling us.
Posted By: TechMuc

Re: Forecast-site Model Instancing??? - 12/27/10 13:05

Communication is everything.. A nice marketing strategic which is not known by everyone wink

btw:
xna with model-instancing: http://create.msdn.com/assets/cms/images/XNA_MeshInstancing_01_large.jpg
xna without model instancing: http://create.msdn.com/assets/cms/images/XNA_MeshInstancing_02_large.jpg
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 13:26

Originally Posted By: TechMuc
Communication is everything.. A nice marketing strategic which is not known by everyone wink

btw:
xna with model-instancing: http://create.msdn.com/assets/cms/images/XNA_MeshInstancing_01_large.jpg
xna without model instancing: http://create.msdn.com/assets/cms/images/XNA_MeshInstancing_02_large.jpg


Wow this is so much different!!! So why there is not so much difference in A8 ?
I think special the PSSM Shadows with many renderpasses could be much more faster with model-instancing!!!!
Posted By: Slin

Re: Forecast-site Model Instancing??? - 12/27/10 13:28

And now tell us, where one would have such a scene for more than just demonstrating, with just many times the exactly same object...
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 13:36

Originally Posted By: Slin
And now tell us, where one would have such a scene for more than just demonstrating, with just many times the exactly same object...


There are many same objects if you have a big vegetation, maybe road models etc.
Posted By: Slin

Re: Forecast-site Model Instancing??? - 12/27/10 13:50

You don't want every second tree to look the same, same about a street and for simpler vegetation, isn't there already sprite instancing?
Also, instancing can even slow things down in many cases especially with more complex objects than flat planes or boxes.
Posted By: HeelX

Re: Forecast-site Model Instancing??? - 12/27/10 14:17

Originally Posted By: Slin
And now tell us, where one would have such a scene for more than just demonstrating, with just many times the exactly same object...


Amen.
Posted By: WretchedSid

Re: Forecast-site Model Instancing??? - 12/27/10 14:34

Originally Posted By: Benni003
There are many same objects if you have a big vegetation, maybe road models etc.

I like they maybe a lot... If you want the feature, you should say why you need it with good reasons. "Maybe" isn't a good reason.

Also that was Slin said.
Posted By: Pappenheimer

Re: Forecast-site Model Instancing??? - 12/27/10 15:58

Speaking about vegetation, did you know about this?

"A8: If the sprite's file name ends with "_x2" or "_x3", it is rendered in the shape of 2 resp. 3 crossed planes. This is very useful for simulating vegetation. You can find an example in the infinite_terrain.c demo."
Posted By: TechMuc

Re: Forecast-site Model Instancing??? - 12/27/10 16:18

... i just should have posted the screenshot..
I have no idea how model-instancing works, i have no idea if it has performance dropdowns/issues etc, but i'm pretty sure that good communication is performed slightly different laugh
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 16:21

I know this, but models are looking better, special if there are not just grass and small trees in the level. Also I said it could speed up the pssm, because there are some views and every object is rendered 4 times or more!
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 16:24

look at this: Instancing Video
Posted By: Rei_Ayanami

Re: Forecast-site Model Instancing??? - 12/27/10 17:11

Originally Posted By: VideoDiscription
..DX10 capability..


Sure that could work with DX9 as good as shown in this video?
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 17:49

I tried the demo with 60000 Models in instancing mode and the framerate was perfect. I think DX9 and DX10 isn't this much different that the framerate would break down with dx9.
Posted By: Quad

Re: Forecast-site Model Instancing??? - 12/27/10 17:58

60k models of what? boxes? or bone animated actors?
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 18:26

Originally Posted By: Quadraxas
60k models of what? boxes? or bone animated actors?


no, complex, animated models. See the video I posted 2 posts before
Posted By: Quad

Re: Forecast-site Model Instancing??? - 12/27/10 18:38

that's what i get when i run crowd.c(bone animated character models) sample with 60k actors on 9600GT, note that this scene has no LOD setup and no instancing. If instancing is going to only give me 10 more fps it's not really useful. Also no one would need this much animated actor on screen at the same time. For vegetation, as others also stated, you would not want same tree model all over the forest. for grass and clutter sprite instancing is supported. Say if you are going to use 20 of each tree model in the scene and only 3 of same tree will be visible on screen, instancing would not make too mush difference on performance.


Posted By: Slin

Re: Forecast-site Model Instancing??? - 12/27/10 18:44

And still, all models are exactly the same.
And now show me a comparison of the same very complex model rendered five times with instancing and without. I am sure that the instancing one will only be slightly faster, if not even slower. As I already posted before, I am not sure if I understand the concept behind instancing correctly, but if I do, it basicly means that it reduces the amount of data pushed to the graphics card if the same object is rendered again and again. Fact is, that this part of the rendering, isn´t really a big problem anymore with todays hardware. A bigger problem actually is to feed the graphicscard with enough data, so that it doesn´t have to wait for the CPU to push new data.

Btw, if I am writing bullshit, please correct me, as I am really willing to learn more.
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 19:16

But when I tried the demo, where I linked the video with instancing and 60000 models no framerate problem, but without instancing the framerate broke down!!!
Posted By: WretchedSid

Re: Forecast-site Model Instancing??? - 12/27/10 19:24

Are you actually reading what other people write or are you going to throw youtube links in for the next few posts?
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/27/10 20:11

I am reading other people posts!
I think model-instancing is very important. As an example the game anno1404. Without model-instancing this game would not been possible like it is, the developers said. There are big cities, big forests etc. In this game many objects are the same, special the vegetation but it looks good! First they tried without instancing and with just some hundred models the framerate was to much less. So they added model-instancing. And you all forgot the shadowsystem! with PSSM shadows every model is rendered 4 times or more. If people use model-instancing in the right way, the difference between with and without model-instancing is amazing!
Posted By: WretchedSid

Re: Forecast-site Model Instancing??? - 12/27/10 21:13

Looks like you really know much about mesh instancing, I'm impressed. Why don't you write JCL a email or visit him so you can show him what he is doing wrong, because he clearly must be stupid like hell if model instancing is such a performance booster but the internal tests showed that it wasn't that effective.
I'm pretty sure that he will give you some money for your efforts wink
Posted By: FBL

Re: Forecast-site Model Instancing??? - 12/27/10 22:06

Easy solution to this:

There is a d3d_instancing variable, and there exists some model instancing routine for A8.

So just drop it into the engine, mark the feature as DONE and let the user decide grin
Posted By: the_mehmaster

Re: Forecast-site Model Instancing??? - 12/27/10 22:56

Originally Posted By: Firoball
Easy solution to this:

There is a d3d_instancing variable, and there exists some model instancing routine for A8.

So just drop it into the engine, mark the feature as DONE and let the user decide grin

Exactly, that'd be perfect grin
As well it'd be another point to hold against other engines.
Posted By: Machinery_Frank

Re: Forecast-site Model Instancing??? - 12/28/10 09:54

Instancing is a very common technique especially when many objects are rendered multiple times. I saw this often while playing with different technologies.

You also should keep in mind that instancing is not only to speed up the process. It might be that it will not bring a lot of speed progress with just a few models but keep in mind that instancing is also to have a low memory footprint. The index and vertex buffer exists only once for all these objects. Thus it can also help to render a lot more given the same memory budget.
Posted By: jcl

Re: Forecast-site Model Instancing??? - 12/28/10 15:02

Originally Posted By: Firoball
So just drop it into the engine, mark the feature as DONE and let the user decide grin

This was our intention, but it turned out that it was not worth the hassle. The scenes where instancing offered any advantage, in the form of a frame rate increase, were rare in an ABT engine. In many scenes it was even slightly slower, due to the sorting overhead. Thus, almost no one would have used model instancing and we saved the precious implementation time for other features.

We're often testing methods to improve the renderer, but not all get implemented in a release.
Posted By: Matt_Aufderheide

Re: Forecast-site Model Instancing??? - 12/29/10 12:36

I have to disagree...instancing is absolutely necessary when rendering things like grass in particular...unless you use batched sprites, if you use models you must use instancing.

As it stands there is no way currently to render large amounts of grass (and other similar things) efficiently in A8. I implemented my own instancing functions in a dll to do this, but it would better all around if it were in the engine.

I think a lot of users would appreciate this feature.
Posted By: Quad

Re: Forecast-site Model Instancing??? - 12/29/10 15:02

SPRITE INSTANCING is already supported. you can render very large areas of grass with that. Using models for grass is waste of resources even with instancing.
Posted By: Machinery_Frank

Re: Forecast-site Model Instancing??? - 12/29/10 15:20

Originally Posted By: Quadraxas
Using models for grass is waste of resources even with instancing.


But what if you want to render hundreds of little rocks and stones on the ground? Or what if there is a city view with hundreds of lowpoly houses in the background? A forest also consists of not only unique trees. You could repeat a handful of trees all over the scenery. Although a forest could use sprites in a distance as some kind of impostors (static or dynamic).
Posted By: Nowherebrain

Re: Forecast-site Model Instancing??? - 12/29/10 19:29

I would certainly love to have instancing, of course I would love to have A8 as well wink
Posted By: Benni003

Re: Forecast-site Model Instancing??? - 12/30/10 19:16

Good to see people who know how important instancing is.
just one example. I'm developing an 3d city building game with 3dgs. Many times the same building, same streetmodels, same trees same people and so on are placed.
For me instancing would make the fps in my game higher.
And I think also other games would be faster with instancing.
In other engines instancing is working so good, so I think they should do model-instancing for A8.
Posted By: Scorpion

Re: Forecast-site Model Instancing??? - 12/30/10 19:47

Just my two cents to this...
There is no need for a lot of different models for vegetation. You get a bunch of variation by using different rotation, size, color and animation state - probably even changing the geometry on the graphic card itself. All these things can work with just one model. And some tropical-shooter-thingy-game proofed that it works pretty well. Didn't they use just 7 or 8 different models?

Personally I need no instancing in my projects, but if someone knows, how it's properly used, there can be huge speed advantages.
Posted By: Pappenheimer

Re: Forecast-site Model Instancing??? - 12/30/10 20:59

@ Benni:
For the city thing you could use wmbs with lod while the first lod of the wmb gets all buildings seperately and the last lod 'collects' them in a single model.

from the V8.00.1b beta - released Apr 23, 2010
Quote:
A8 ent_create can create several entities at once by loading a WMB entity that contains sub-entities.


There could be better solutions, maybe.

@ Scorpion
JCL, himself, didn't recommend to use animated models for that, because animated models are always slower than non-animated models...
Posted By: FBL

Re: Forecast-site Model Instancing??? - 12/30/10 22:46

The point is... we should not need workarounds for such things.
I don't know how isntancing works and what the frame rate is, so I cannot evaluate jcl's or other statements here.
Posted By: Scorpion

Re: Forecast-site Model Instancing??? - 01/02/11 15:34

In general the engine has all the important stuff implemented, but in a waste amount of cases, they are hard to use and set up to work just right. In my opinion that is the thing where more focus has to go. Maybe even some wrappers/simple dlls for the editors could make our lives a waaaay easier.

@Pappenheimer
Do the animations procedurally on the gpu and you're fine with that
© 2024 lite-C Forums