DAE's Lighting System with Optimised Real-Time Shadows and Animated Lights

● ARCHIVED · READ-ONLY
Started by SebyDevDev 21 posts Page 1 of 2 View original ↗
  1. 14nIM46XMS.gifRaG0yLpHmU.gifeJDOU3AKhe.gifrQolCzQ6pk.gif
    What's been added since the plugin was first released:
    - Spritesheet animations for lighting
    - Custom animation settings for lighting (animated lights without using images)
    - Light culling and various optimisations
    - PNG-based lights + settings-based lights
    - Custom directional offsets (for flashlights and such)
    - Light rotations and angle wideness

    (The help file has more detailed instructions, make sure to check it out!)

    GIFs






    Screenshots
    1631701139395.png
    1631701146488.png1631701152502.png1631701161238.png1631701169034.png

    Setup demonstration


    Download DEMO (non-commercial) project: https://daedrakyne.itch.io/daes-lighting-system
    Buy PRO version (commercial-version):
    1. If you want to support me, send me £10 ($13.85) via PayPal and send me a PM with a screenshot to confirm your payment, and once the payment is confirmed, I'll send you the plugin and add your forums account to the list of paying users (to send you future updates of the plugin): https://paypal.me/SModley?locale.x=en_GB

    2. Otherwise, buy the £15 ($20.78) version on itch.io (you instantly get access to the plugin and future updates, but I only get 50~65% of your payment): https://daedrakyne.itch.io/daes-lighting-system

    Hey there! :kaojoy:
    I've been working for a while now on a new lighting plugin for both MV and MZ.
    My reason for starting down this road was due to this post from about a month ago:
    MV - Khas UltraLighting Remake for Commercial Purposes
    I've researched the most efficient 2D-RTS lighting systems, and have decided to base mine on a pure-hardware (GPU) implementation.
    In its current state, without culling (meaning that for now every light in the scene is being rendered/updated, regardless of whether it's even on the screen or not), the game can handle ~650 lights (with shadows) in one scene without its fps dropping.

    If you could try it out, and leave your thoughts down in a reply below, I would really appreciate it! My goal is to make a plugin that is more diverse than khas' while still being as optimized as possible.

    Plugin commands (MV) (no need for MZ plugin command instructions):
    • dae_light setambientlight r g b
      • Sets the current ambient light to the specified color.
      • r, g and b are numbers from 0 to 255 that represent an rgb color.
      • Example: dae_light setambientlight 0 20 0
    • THE REST OF THE PLUGIN COMMANDS ARE THE SAME AS THE EVENT COMMENTS, BUT WITHOUT "[" AND "]"


    Event comments (run whenever event page changes):
    • [dae_light addlight uniqueID type]
      • Adds a new light and sets its position to that of the event. Light will follow the event wherever it goes
      • uniqueID can be either "null" or any word (letters, numbers and underscore). If set to null, the light will not be stored as a unique light (meaning that it won't be designable by other commands / comments)
      • type must be one of the light types from the plugin parameters. For example, "halogen". New light types can be created in the plugin parameters.
      • Example: [dae_light addlight halo2 halogen]
    • [dae_light setoffset uniqueID offsetX offsetY]
      • Sets a manual offset for the designed light, if it exists.
      • offsetX and offsetY are numbers.
      • Example: [dae_light setoffset halo2 0 24]
    • [dae_light setcolor uniqueID R G B]
      • Sets the color of the light
      • R, G and B are numbers between 0 and 255
      • Example: [dae_light setcolor uniqueID 255 0 255] (pink)
    • [dae_light setrotation uniqueID rotation]
      • Sets the rotation of the light
      • Rotation is an angle between 0 and 360
    • [dae_light setangle uniqueID angle]
      • Sets the angle wideness of the light.
      • Angle is between 0 (no light) and 360 (full light)
      • Example: an angle of 180 will create a semi-circle light
    • [dae_light setintensity uniqueID intensity]
      • Sets the intensity of the light.
      • Intensity is between 0 (no light) to 200 (bright light).
      • For some reason, the MZ plugin can't handle a single intense light, but works fine with multiple lights added together. Until this is fixed, you can overlap multiple lights together to create a bright light.
    • [dae_light setrotation/f uniqueID rotation]
      • Sets how much the light rotates every frame.
      • Rotation is any number, negative or positive, and with decimals allowed.
    Map notes:
    • <dae_light off> -- Disables lighting for that map
    • <dae_light shadowpicture picture_name> -- Uses the given picture as a shadow map for that map. The picture must be in the "img/shadows/" folder.
      • Example: <dae_light shadowpicture shopping_map_shadow>
      • Shadow maps can be easily created by saving a picture of a map (right-click on map -> save), going to a picture editor (I used piskelapp.com), and drawing black in a new layer wherever you want shadows to be.

    There is no current customization for RegionIDs (it is easily implementable, just wanted to get the demo out first), but you can currently use the regionID 17 to create a blue light, and regionIDs 4, 6 and 7 to create shadows. (4: full block shadow, 6: left wall shadow, 7: right wall shadow)


    Changelog:


    • v 1.5
      1. Added support for light spritesheet animations.
      2. Added support for light custom animations (settings-based)
      3. Implemented customisability for Region Shadows and Region Lights.
      4. Implemented various performance optimisations.
      5. Implemented basic light-culling.
    • v1.3
      1. Added support for custom images for lights! (like khas' plugin)
      2. Added customisability support for custom-image lights (resizing, color tinting, + everything else)
      3. Added direction-based custom offset option for lights, useful when making flashlights
      4. Added plugin command for ambient light
    • v1.2
      1. In-game light modifications (color, intensity, rotation, angle, rotation/f, offset)
      2. Automatic offset change depending on the rotation of the light
      3. Automatic light rotations (rotating lights!!), with customizable speeds
      4. Light angle/wideness customization: you can now create flashlights, and beams!

    Current goals for the next version:
    - light / shadow heights
    - event shadows (you heard that right! events will be able to have shadows too)
  2. Sounds sick!
  3. KotoYama said:
    Sounds sick!
    Thanks! I'm currently working on making a quick new map for MZ (due to legal reasons) and making nice scenes to take screenshots of to show in the top post ^^ If you want to demo what you've been able to make with the plugin, feel free to post it here! :kaojoy:
  4. This is cool as a new lighting plugin replacing Khas'. I really wanna use it, but I have finished more than 50% of my games, and replacing Khas' plugin is truly a pain now.
  5. JamesRyan said:
    This is cool as a new lighting plugin replacing Khas'. I really wanna use it, but I have finished more than 50% of my games, and replacing Khas' plugin is truly a pain now.
    I've tried to make this plugin as compatible with Khas' as possible, so migrating from one to the other shouldn't be too much of a pain ^^ Let me know if you'd like the plugin to be able to read khas commands directly, though, to simplify the migration
  6. DaedraTalos said:
    I've tried to make this plugin as compatible with Khas' as possible, so migrating from one to the other shouldn't be too much of a pain ^^ Let me know if you'd like the plugin to be able to read khas commands directly, though, to simplify the migration
    Wow! Truly music to my ears. I have hundreds of lighting events from Khas' plugin in my game, so if you can make this plugin to be able to read Khas' commands directly, it will be perfect for those who are in the same trouble as me.
  7. MV: (Fixed a bug where the lights would "pop into existence" when first rendered on screen)
  8. if you have the nice feature of the wall (1 block (not 1 tile height/1tile top)
    than i would be super happy :) I love the sensore part too however that is done.

    you do a really awersome job for the community, the best I have ever seen
    in my opinion, than ocram -> shora I believe -> cummunity lightning which have
    side walls/corner light as well.

    but this is truly amazing :)
  9. Really nice work !
    Can't wait the version with event shadow.

    To be honest i'm waiting this function before buying it.
  10. What is "event shadow"?
  11. @Dark_Ansem my guess like NPC have shadows when walking in the light,
    while ghost events does not.

    I think you get more control how event shadows work and when not.
    or events that can have shadows or should have by default, you can
    give some more :)

    it's a guess, but that is what I think what he ment with "Event Shadow".
  12. @DaedraTalos any update coming early next year?
  13. Is this plugin still being supported?
  14. it is still supported, he is just currently busy in RL, so give him time :)
    when he continues would be unknown depending if he work or to school etc.
  15. Hello! This plugin has a big issue. I tested the demo and I got this error when saving the game:


  16. Hello, is there any plugin command flashlight for player (like "PlayerLantern flashlight" khas plugin)? All I see is for the event. I'm checking demo project but it just long script that i don't know how to implement to my project. Putting the script to my project and i got this error.adsa.png
  17. I'll never understand how this Plugin has dynamic shadows but Visustella hasn't.
  18. I can't save the game when the plugin is on in RPG Maker MZ. What can I do? Anyone else have the same error?
  19. @-Kain- it might have worked or depending on the plugin you use.
    if it doesn't in the later version of MZ it might have been broken.

    I'm unsure if he is still active and working on it, else try Shora's Lightning,
    which has Dynamic Shadows as wel, but it has some features this one has.

    but you should try other lightning plugins that can work for you.
  20. Do i only need the js plugin file or do I have to copy the libs folder to my game as well for this to work.