Home Development
Welcome to the new Diaspora forums, please let us know if you see anything broken! Notice: Some users may need to reupload their avatars due to an issue during forum setup!

Particle Emitter E2 Extension - Known Issues/Suggestions

SteeveeoSteeveeo Registered, Administrator Posts: 849
edited August 2014 in Development #1
Greetings, coders! If you're reading this, there's a fair chance you've also read the change log where I introduced the Particle Emitter v1.0 E2 extension (go read it, this isn't documentation). This thread is to reach out to everyone who wishes to help with the development of this rather new E2 extension.

Current version is v1.1, go read the Change Log.
Essentially, I can do a fairly good job of finding bugs in my own code, but there are many times where something breaks when I'm not here or when I'm too busy to care. Also, people like to tell me about things I already know about when I'm online, so there's that.

Below, I'll post all the known issues I current know about and their status of being fixed. Please read these if you're having issues, and if you don't see your issue here, go ahead and post it.

Note that the priorities are added by me, or whoever is editing this post, don't bother setting it yourself as I'm not likely to set "Particles render slightly too big" as [MAJOR]. :P

Also, feel free to post your suggestions for features that are not yet implemented or noted here, just be sure to mark it as such. I'll post the stuff that I'm already planning to get the ball rolling.


Known Issues
  • [UNFIXABLE] - Some materials render really poorly in the emitter. This is because the CLuaEmitter class, which this uses heavily, only takes String arguments for materials, and therefore I can't mess with their settings like I can with sprites (which take the Material class). To find working particles, use the console command "+mat_texture_list" and look for materials with the flag "DXT5" or some form of "RGBA".


Planned Features
  • Burst vs Constant - Right now, particles can only be emitted constantly. This feature is essentially two features in one. Firstly, turning off emitters does work, but you have to set the emitter's rate to 0 and then back to normal when you want to turn it on (and even then, it still emits at least one particle before turning off). Secondly, emitters in GMod are not only smoke and fire, but also explosions and shockwaves. The plan here is to specify which type the emitter is on creation, as well as adding an "Activate" function; Activating a burst emitter will emit EmitterRate particles and stop, activating a constant emitter will turn it on and off.
  • Advanced Velocity Inheritance - Add in an optional entity argument to emitterVelocityInherit(). Currently, that function only works when parented, and does not work on holo-parented emitters. New entity argument will tell the emitter to inherit from a DIFFERENT entity (should make for interesting effects).
  • Force Points - Attractors, Repulsors, maybe even Vortex points. Basically definable points, either global or relative, that affect the movement of particles in an area or globally. Area attractors/repulsors will probably have a setting between linear, quadratic, and zero falloff in their force.
  • Fade In / Fade Out - Currently, particles can either fade in from 0 or fade out to 0, but not both. Also, controlling the timing on when fades complete is not currently a thing. This will be fixed some time in the near future (if not the next version).
  • Sprite Angle Overrides - As of 1.0, particles emitted by E2s always face the camera. In some future version, I'll let users override the angling for more advanced effects, like water spray and shield hits.
  • Particle Client Blocking - I plan on having a way to block annoying particle spammers, a la "wire_holograms_block_client". For now, just set "wire_particles_enable 0" if someone's spamming too much.
  • TRUE Particle Parenting - No idea how I'm going to pull this off just yet, so don't expect it in the next version or so. Basically, having even the PARTICLES parented to entities, so they move with the entity. Example: interior ship fires; smoke inside a ship wouldn't go flinging out the back when the ship moves.

Comments

  • SteeveeoSteeveeo Registered, Administrator Posts: 849
    Known Crashy Materials
    • effects/prisonmap_disp.vtf
    • effects/ar2_altfire1.vtf
    • effects/combineshield/comshieldwall.vtf

    The above materials will crash clients, and have been added to a blacklist to prevent that. If you find any other particle materials that crash people, let me know so I can add them to this list!
  • Lambda217Lambda217 Registered, Moderator Posts: 534
    effects/combineshield/comshieldwall.vtf

    this material may result in 'fun'


    "I want you to show this world what it means to fear the sky."
  • SteeveeoSteeveeo Registered, Administrator Posts: 849
    Updated the OP as new changes have hit Server #1.
  • SteeveeoSteeveeo Registered, Administrator Posts: 849
    Added a few more ideas to the Planned Features section.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file