Game Development Community


#1
04/01/2005 (10:31 am)
Rob,

You've asked this before and it's been answered really. The thing is, you talk about scaling an entire effect but what properties does this mean? Most effects don't work correctly unless you scale things like emission force, particle-size, particle-speed and others (effect dependant). There just isn't a magical SCALE command with so many variants that's easy to derive.

You can set the viewport size directly in the editor to your games size. This way, you're effects will be sized correctly. You don't need to use the default view size, just change it and your effects will be correct.

I know where you're going but it isn't as easy as it first sounds.

If you come up with a set of properties (presumably in the effect) that you want to scale and how they are scaled (e.g. all the same linear scale?) then I'd be happy to look at it though.

I can't write a command for one person; it has to work for all effects for all people. :)

- Melv.
#2
04/01/2005 (11:10 am)
Hi Rob,

I think the reason for the different value scales has to do with what the values represent.

Scale, for example, is something that you would want to be able to control with values between 0.0 and 1000.0, where 1.0 would be the particle at full size, and everything after that makes the particle bigger.

A parameter for visibility, on the other hand, needs to be between 0.0 and 1.0 (something can't be more visible than completely visible, afterall :)

I could be completely mistaken, but I believe that's the reasoning there.

Chris
#3
04/01/2005 (11:20 am)
Normalising all scales doesn't really make sense. If I want something that's scaled x1000 then I use 1? If I want x500 then I use x0.5? If I want to scale by x1 (no scale) then I use 0.001? I want the angle to be 180-deg so I use 0.5? x1000 means x1000 so normalising it doesn't make sense. Yeah? Not sure how that would make it clearer really.

Anyway, it's not the ranges that makes it hard to define which ones to scale to "scale-up" your effect. For instance, most effects have their emission quantity set so that their size and coverage looks correct. If you "scale-up" the effect to a larger area, you'll probably want to resize the the effect-window, scale-up the emission-quantity, emission-force, particle-speed, particle-size and god knows what others. For some effects, you won't want to. There isn't a definite set of fields here. As I said before though, you do not need to do this and should avoid it anyway. Define your effects in the editor to the size you want them.

Don't get me wrong, I'm not saying that it can't be done, it's just that it's hard to pin-down an exact definition because there are so many variables.

As I say, you can define your effects to the size you want without coming out of the particle-editor. One thing you can't do is add in an object to the particle-editor to see your object in size-relation which would be nice but you can setup the view size in the editor so that your values are in your games units. You can create an effect that's 10 world-units wide if you wish.

I think the problem here is that the particle-editor is not intuitive enough for you and you're (quite rightly) then trying to adjust effects in script to get what you want. This is a failing in the editor and I don't want to jump head first into adding too many functions when it's a more intuitive editor that needs developing. This will be done. :)


- Melv.
#4
04/01/2005 (2:13 pm)
Thats a very good suggestion... though I wouldn't rate it high on priority I would have to agree with the usefullness of it
#5
04/01/2005 (10:59 pm)
It's not quite ideal, but could you not just create a new emitter, and assign it an image map of a sprite (the players spaceship for instance)? The rest of the particle effect wouldn't neccesarily be perfectly lined up on the sprite, but it could help with scaling.
#6
04/02/2005 (1:31 am)
It might be better to have a scale bar in the effects editor itself. It wouldn't translate directly into a scale parameter, but it would "scale up" the other parameters of the effect. That way, if it does something that the user finds wrong, it can be fixed.
#7
04/02/2005 (8:25 am)
Rob,

For the new editors, we'd like them to be overlay windows so that you can do just that. It's early days but the new editors should be an extension of your game.

This is unsupported but if you replace the first part of the "editorScreenGui.gui" file with the following, the particle-editor background becomes transparent and your game shows through if that helps.

//--- OBJECT WRITE BEGIN ---
new GuiControl(particleEditorScreenGui) {
   profile = "GuiDefaultProfile";
   horizSizing = "width";
   vertSizing = "height";
   position = "0 0";
   extent = "800 600";
   minExtent = "8 8";
   visible = "1";

   new fxSceneWindow2D(editorSceneWindow2D) {
      profile = "GuiContentProfile";
      horizSizing = "width";
      vertSizing = "height";
      position = "201 0";
      extent = "599 570";
      minExtent = "8 8";
      visible = "1";
      lockMouse = "0";
   };
   new GuiControl() {
      profile = "GuiDefaultProfile";
      horizSizing = "width";
      vertSizing = "top";
      position = "201 569";
      extent = "599 31";
      minExtent = "8 2";
      visible = "1";

- Melv.