christina's Forum Posts

  • christina

    Until they add the ability to pass normals with the mesh data you could use derivatives to calculate the normals from the fragment shader. The only caveat is it would be normals per face instead of per vertex so it would be like flat shaded instead of smooth shaded.

    Found an example online that demonstrates that.

    http://webglsamples.org/WebGL2Samples/samples/texture_derivative.html

    Derivatives are included by default in webgl2 and as an extension in webgl1 (which c3 already loads as far as I remember). I’d assume it’s something in webgpu as well, but I haven’t checked.

    Thank you R0j0! Always up-to speed! <3

    YEs I know, they can be calculated from the depth shader as well.

    But a low-poly object that is ALSO flat-shaded looks too ugly to use.

  • I believe in C3. I have since day one (I've been here a long time).

    I'm building materials into construct as shaders.

    The one thing we're missing is access to mesh vertex normals. I.e. C3 can import a 3Dmodel and it has access to its mesh vertex normals (it's why it can render lowpoly models as smooth), but it doesn't expose the vertex normals to the shader.

    I made a feature request, which you can upvote:

    github.com/Scirra/Construct-feature-requests/issues/718

    Ashley I was very very considerate of your time and implementation scope, I've been researching this for weeks before writing it. Before the 3Dmodel implementation! I was working with 3D models made out of the grid mesh, I even wrote a working 3D to C3 mesh tool.

    Anyway.

    Here is why users like you would be interested in this feature. You could have 3D objects that, with only the addition of a matcap texture,

    could look like this:

    Also cubemap reflections are possible. Gouraud shading without an actual light system (you could have a sprite that you move around in XYZ, and tell the shader it's a lightsource. The shader will do its magic). Making a material editor that exports materials in c3addon format is really trivial after that.

    Would be way ahead of GDevelop. That's because C3 is a mature codebase and already supports shaders

  • Hi!

    Making a matcap shader for Construct 3, now that it can import 3D obj

    Since we have no access to normal maps, I bake a normal map and load it as a texture. Shader has access to it, so it can use the normals as input to do the matcap shader.

    I encode a 64x64 matcap texture in the shader itself. Which compiles fine. I upscale the image *after* loading it, to 512x512 so it looks smoothe despite the lack of detail. As you can see it looks good.

    Ashley do you think we'll get access to a normal map, or better yet, normals, for 3D models?

    Until then this is a pretty ok solution

    bsky.app/profile/castpixel.bsky.social/post/3mdgk7yzzts22

  • do you know if the sprite-> create mesh changed? I noticed some instability in latest beta

  • Amazing news!

    Ashley and team well-done, I know it's a lot of pressure.

    I've been experimenting with 3D meshes lately, and adding a normal map to a 3D mesh allows you to make a shader material that's "really" 3D.

    But having access to a 3D importer, I can just bake the normal map, so it's a series of RGB gradients, and inside C3 just do an honest-to-goodness 3D material.

    I just make the shader do stuff to each of the pixels of the normal map, keeping the information but substituting the gradient colors for nice ones :)

    Presenting to you: sand and gold.

    Sadly, the lighting has to be per effect. But it's a proof of concept.

    https://bsky.app/profile/castpixel.bsky.social/post/3mczlym6urk24

  • C. Dev hi!

    I contributed just because I think it's a cool project.

    The link to download doesn't work, how can I test the editor and help the project out?

  • any ideas? insights? is it just modern APIs that are broken?

    is it on the C3 side?

  • I'm sending a

    SHARE text "I beat the game" (title"", URL "")

    event, but none of the connected platforms (twitter, facebook, etc) give me the text "I beat the game"

    It's only empty text.

    The image.png I'm sharing, using binary data, shares just fine.

    Am I doing something wrong with the text? Does the project have to be published, i.e. not in preview? But then why does the image work?

    Thank you!

    Tagged:

  • hm ok, it seems this is some code by Google // webaudiodemos.appspot.com/input/js/waveshaper.js

    Is there any way to use the same code *inside* construct, by connecting a webaudio waveshaper node myself and writing the javascript I need?

    thank you

  • Ashley or anyone who knows.

    Could you explain to me the distortion effect in the web audio of Construct?

    Web Audio has documentation for the waveshaper effect, and it seems the distortion is some implementation of that, but what do the numbers actually correspond to, and what are the base values fed into the waveshaper?

    It seems this effect causes the audio signal to become overdriven (i.e. resemble as quare wave with rounded edges). Which is great, but it's not technically distortion, but overdrive?

  • Hi

    So I'm trying to control the Compressor effect, which takes these arguments:

    threshold, knee, ratio, attack, release

    Instead my options are these arguments:(mix, filter/phaser frequency, filterphaser detune, filter/phaser Q, flanger/ phaser modulation etc)

    Does anyone know if these correspond somehow? Ashley

    Same for Distortion, delay, gain, phaser, ring mode and tremolo.

    Thank you

  • Yes, it works when I add the pixelate effect to a family of sprites.

    Wheee!

    Ashley I know we usually ask for help, but this time I'd like to say:

    kudos for a tool well done! Is there nothing construct can't do?

    <3

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hmm it seems like this works:

    *Using trilinear,

    *then upscaling the pixelart layer x9

    *then pixelate ( size 1) *all* the pixelart objects - it produces only weirdness if I add the pixelate effect to the layer itself, I wonder why

  • So, imagine I have a plastic toy device that has a tiny screen. The tiny screen is pixelart. The toy device is high resolution.

    But resizing things is suddenly not straight forward. The pixel art screen looks blurry when Bi/Trilinear is used, but the high res art becomes really ugly when nearest neighbor is used.

    Right now I'm doing it by pre-scaling my pixelart to 900% its size, and then doing a ton of math and conversions between positions and distances (everything is x9)

    Is there a way to use a "window" or a "frame" that displays crisp pixelart, upscaled in nearest neighbor?

    Ashley I guess I'm asking if there's a way to have per-layer scaling modes.

    Thank you!

  • Thank you Ashley