Funky Koval's Forum Posts

  • R0J0hound

    Another feature I would love to have would be an animation system like I suggested in the Triangle3d thread:

    Extend Set object mesh with a parameter called Blend Time, defaulting to 0.0. Then, if the new mesh has the same number of vertices as the currently assigned one, the vertex positions will interpolate from the old mesh to the new mesh over Blend Time. It would be up to the user to make sure the vertex order in the two meshes is correct. If the vertex number is different, the blend would not happen and the new mesh would be loaded immediately (current behavior).

    What do you think?

  • R0J0hound

    1. Yes - that's exactly it. I completely missed it...
    2. Sorry, wrong terminology - I mean having an Additive or Multiply Blend Mode for individual objects.
    3. Yes please. I don't know at what level of fidelity performance will suffer, but I would suggest Diffuse and Emmisive as a minimum.
    4. Yup. Omni, even without shadows would open a lot of possibilities. For any distance-bound lights, I would just have max light distance and an option to specify a decay curve (linear/square/inv square etc.)
    5. Yes - absolutely - it can't get any more optimized that using that condition. I withdraw my request - this makes the live link unnecessary.
  • After using the plugin for some time, I have a bunch of feature requests, if feasible:

    • Can we have a per-object opacity parameter which is multiplicative with the texture alpha (like object color-object texture)
    • Is it possible to have different transition modes for objects? ATM, I can only think of Additive and Multiplicative...
    • Can we have the ability to add an emissive texture to the object? Besides artistic possibilities, it would allow faking localized light sources...
    • More light types please. An Omnidirectional light even without shadow casting to complement the existing Directional one would be great
    • Right now, loading texture from Sprite is not a live link - it will only load the texture at the time of issuing the command - is it possible to make an option to make it a live link? That way, one could set timing/looping of animated sequences in the Sprite and just link those. Currently, I'm working around this by setting object texture once, and updating the texture under that tag every tick.
  • Thank you again - shadowing and lighting work now, but... is Shadow Color alpha inverted? When I give it a value of 1 (should be fully opaque), I get no shadow/shading. When I give it a value of 0, I get shadow/shading at full strength.

  • Thank you. Downloaded from the link in the first post - but I'm getting an error message at startup:

    ---------------------------

    HTML5 exporter

    ---------------------------

    Unable to load plugin in 'C:\Construct 2\exporters\html5\plugins\rojo3d\': Javascript exception in file 'edittime.js' line 71: SyntaxError: Unexpected token ;

    Code line:

    AddNumberParam("up z", "vector z", "0";

    Stack trace:

    SyntaxError: Unexpected token ;

    This plugin will not be available in the editor.

    ---------------------------

    OK

    ---------------------------

  • Hand time to do further testing: ran through Google Chrome, Palemoon (Firefox), Edge and nw.js - all latest versions and all show the issue. My Gfx card is an RTX 2080 running the latest drivers on Win10...

  • Thank you for this. Something I noticed:

    -no matter how I rotate the light (using Euler orientation command), I can not get any shading. My .obj file has normals defined, its color is white, I set object shading to yes, light color is white, shadow color is black, but the object is always pure white without any visible gradation from light to dark (I'd expect white to black). Changing light color to red, makes the object solid red, so light color is working... Euler angles for "light" are 90,0,0 so I would expect light from the side...

    Even in your "camera and light" example, I see no directional shading...

    Do you have any idea what might be causing this?

  • This is very specific and I'm wondering if it's a bug or an issue with my shader:

    I have written a very simple Effect that modifies sampled pixel coordinates based on a predefined number of frames and displays them in a sequence - As an example, you set a single Sprite Animation Frame to a filmstrip with 4 frames, set the frame number in the Effect to 4 and speed to whatever, it will cycle the 4 "filmstrip frames" from the Sprite at the given speed.

    The problem is when there is more than one frame in the Sprite Animation - the pixel sampling is completely wrong even if the Animation Frames have the same size - it seems to sample areas of the final Sprite Sheet instead of the Sprite's Animation Frame boundary (changing the Sprite Sheet size under Project Settings changes the sampled pixels - still wrong, but there is a distinct change).

    I'd rather not share the Effect publicly until I have this ironed out but will gladly send it to someone with more knowledge to take a look if they are willing.

    Does anyone have an idea what's happening based on what I wrote? Thanks in advance.

  • The closest I can think of is replacing the Layout effect with an overlay object with a correct transition mode and the Noise FX applied to keep the look.

    Now, here's the fun part: Effects use the global time parameter and are not affected by individual object timescale settings, so to make this work, you would have to keep your global timescale at 1.0 (so Noise still animates) and set all the other relevant objects' timescale to 0.0 (for pause)

  • Does anyone know if it's possible to have particles inherit the parent Particles object's motion?

    I've been looking for a way to do this, but can't seem to find a way besides spawning Sprites instead of built-in particles and doing Event Sheet logic - which kills the performance advantage of using built-in particles...

    Alternatively, can this be relatively painlessly added as a feature? Possibly with an inheritance percentage instead of a on/off bool? I can see many cases where users would want particles that stick relatively to the emitter...

    Thank you in advance for any suggestions.

    Tagged:

  • @lucid

    A feature request, if feasible: with the Vanishing Point feature introduced to C3, allowing for skewing the camera viewing angle, every Sprite or "flat" object (like Spriter) is locked to being aligned to the Z-axis, while sometimes, you'd like to align it to the view axis instead (hope I'm making sense).

    Would it be possible to either:

    -add Mesh Distortion to Spriter, so one can make a "vertical sprite" by moving vertices

    or:

    -allow the 3d Object to pick the texture from Spriter - this may need official support, right?

    Sigh, I really miss a general-purpose texture sharing plugin like TextureSetter from Construct Classic.

    Again, thank you for the great work on the plugin.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • That's a well-rounded feature set you have in mind.

    My 5 cents:

    -at least for my use cases, dynamically changing the triangle count in a mesh is not a high priority function - like you wrote, replacing the mesh source while keeping other visual properties the same achieves the same functionality.

    -for a simple animation system, I would suggest the way Element3d does it (an After Effects plugin) - it reads and plays back .obj sequences at a chosen rate - if it detects the same number of vertices between subsequent frames, it smoothly blends the transition. If not, it simply snaps to the next frame when the time comes.

    For something more advanced, reading a frame order sequence from a variable or Array would be great too - simple animation trees could be built with this.

    -for 3d math, I totally agree - parenting would be great, but then, ideally, shorthands for space translations would be needed (parent->world etc.), not to clutter the Event Sheet...

    -lighting/shadows would be great - I'm assuming some form of Shadow Mapping? I would suggest adding a hemisphere light like the one in three.js (https://threejs.org/docs/#api/en/lights/HemisphereLight) - it alternates between two colors based on surface normal orientation to the light object. Good for old-school, retro effects.

    I think that's it for my wall of text. Again, thank you for developing this.

  • Very nice! Much appreciated.

    When I saw the per-vertex creation mode, I knew an .obj loader was either already in or on your mind...

    Feature-wise, I'd like to request:

    -ability to change texture filtering mode as grossrob0 suggested - at least unfiltered and bilinear would be great.

    -ability to either take textures from a Construct 2 Sprite or to have the ability for the Triangle3d object to hold images/Animations like a Sprite, with an additional option to load texture from URL (like the one available in the current version)

    -ability to have separate front/back textures for faces (for low-poly/stylized stuff)

    -mesh animation support, either via .obj sequences or moving vertices via the event sheet... I understand continuously loading .objs may have a performance impact...

    -support for .md3 (Quake 3 model format) - it's an old format, but there are exporters for modern DCCs for it, and it supports vertex animation.

    -basic per-tri raycasting support. if it's unfeasible, per bounding box will be good.

    Anyway, these are just my wishes - again, thank you for the plugin - even in its current version, it's a stable .obj loader with proper depth handling - for which I already have plenty of use.

  • A small-ish request I figured I'd post here: would it be possible to add a "color" option to the Scml object, to uniformly tint it - like the Sprite object? Thank you.

  • R0J0hound

    Yes - works perfectly. Thank you.