Welcome Guest! To enable all features please Login or Register.



Go to last post Go to first unread
Offline Nick  
#1 Posted : Wednesday, April 4, 2012 1:41:09 AM(UTC)

Joined: 3/14/2012(UTC)
Posts: 19

I am playing around to get the "old" EffectsEditor going and have a couple of questions.
Obviously the API has changed quite a bit.

First of all, what is the relationship between Effects and ContentManager?
Can you only create New Effects via the ContentManager?
How about starting with a new ParticleEffect from Scratch?
Shouldnt users be able to construct the whole effect right in the editor
including selecting the images, adding emmiters and modifiers and saving the whole package
without going back and forth the ContentManager or did i misunderstand something conceptually?

The second thing is a little off topic but relates to working with the Editor too.
I dont quite get is the notion of a "Scene" in DE.

The old way of doing things seems to be to inherit from the Scene class, which is obiously not valid anymore since its sealed now.
So, what i dont quite understand yet is, what is the role or the relationship between a Scene and a Screen?

Does that somewhat translate into Level and Layers?

Can someone please elaborate a little on that.


Wanna join the discussion?! Login to your forum accountregister a new account. Or Connect via Facebook Twitter Google

Offline Benjamin  
#2 Posted : Wednesday, April 4, 2012 2:04:42 AM(UTC)

Medals: Admin

Joined: 8/20/2011(UTC)
Posts: 1,421
Location: Hannover

Thanks: 18 times
Was thanked: 97 time(s) in 92 post(s)
Well, the idea was obviously to integrate the EffectEditor completely with the ContentManager (even if it is an external tool, it would call the ContentManager to get and save images and effects). We also have a huge concept in the internal wiki with lots of tasks (months of work if it all were to be implemented, but mostly due to additional rendering techniques and optimizations).

This idea is now off the table and in fact none of the game teams have gone this route. Instead they either allowed to load textures directly or they just used the ContentSystem to upload their images and handled effects without the content system. In the Effect Editor you can just select one of the existing images you have uploaded prior (like the Material Editor right now in the ContentManager when you import 3D content). This is probably the easiest route to go.

Scene and Screen was the same thing in early 2011, that is probably why it is used this way in the EffectEditor .. nowadays you would just use a UI Screen if you need to render some UI (if you don't need UI to be rendered, you don't even need UI Screens). As far as I know all Effect Editors used by the game teams just render the effect with Delta.Rendering (really simple stuff, probably less than 50 lines of code) and the rest of the editing is all done in Windows Forms or WPF (mostly Windows Forms I think because most people are more experienced with it).

Scenes on the other hand are a management concept for content. They are basically top level folders which allows you to separate content (e.g. game content, menu content, or level content for each map), once to enter a different scene in code all other content will be unloaded and make space for new content in a totally automated way you don't even have to think about (lots of other things are based on scenes as well including atlas textures and UI scenes, themes, music, playlists, etc. are all hocked up to them).

Hope this helps.
Offline Nick  
#3 Posted : Wednesday, April 4, 2012 6:48:25 AM(UTC)

Joined: 3/14/2012(UTC)
Posts: 19

Thanks for the explanation.

Currently i am trying to accomplish hittesting for potential Emitter in a given Effect.
I cant figure out a way to get to the actual instance of individual Emitters since EffectData only returns
a list of EmitterData objects, which don't contain the values like position etc. that i am interested in.

I tried to use GetEffectById from the EffectsManager Instance but it seems to be only for internal use.

Any ideas?
Offline tst5  
#4 Posted : Wednesday, April 4, 2012 6:23:17 PM(UTC)

Joined: 8/23/2011(UTC)
Posts: 3

Hey Nick,

All the data and emitter classes just contain setup data to spawn effect particles.

Take a look at the actual effect instances (returned when you spawn an effect) and try to get to the data this ways.

You can also write your own modifier code and do whatever you want at spawn time or each tick.

Also all the code for Delta.Rendering.Effects is now available in v0.9.5, it should help you finding what you are searching for and you can change member access if you want to get to the internals.

Hope this help, I will take a closer look once a am back at my PC and try to give an actual code example.

Rss Feed  Atom Feed
Users browsing this topic
OceanSpiders 2.0
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Powered by YAF.NET | YAF.NET © 2003-2023, Yet Another Forum.NET
This page was generated in 0.073 seconds.