Mikal's Forum Posts

  • Is this export to apk? What is your process, using C3 to build apk or another process? Have you tried remote preview with your android device, does that work? Can you see the console output from your android device (e.g. on iOS I can see console via connecting USB to a Mac and using Safari Develop mode on Mac to view console. I think there is a similar method for Android.)

  • Open the Console panel to view logged messages or run JavaScript

    Press Command+Option+J (Mac) or Control+Shift+J (Windows, Linux, Chrome OS) to jump straight into the Console panel.

  • Ah, I see, thanks for the explanation. An example of what I am talking about would be to adjust the lengths to their current length, would that be possible?

    Thanks also for the pointer on Destroy, that also has a nice effect:

    (Also updated Caustic Wave effect w/ control over distortion and color of wave highlight.)

  • I am trying to figure out a way to allow elastic 'joints' to shift over time in terms of position and strength, any suggestions on how to do that?

    Here's the effect (though in 3d) that I am looking for. An elastic group getting pummeled by other objects and changing shape.

    youtu.be/GTj5iufnM3E

    Also another fun LFJS example:

  • Again, not VST, but this was interesting to me and could probably be integrated into C3 via JS integration.

    alemangui.github.io/pizzicato

  • One is being worked on here:

    youtube.com/channel/UCxYVUzTKpE8Y1vZMyvV6Xdg

  • Having fun with this and I know I have only scratched the surface! Using iPhone accelerometer to control gravity (tilting phone) and use an image to particle spawn, elastic behavior makes for a nice effect. I can see creating an image specifically for this could turn out really well.

  • It's not as direct as your example, but perhaps something with

    CreateDynamicTexture(width, height, opts)

    and

    UpdateTexture(data, texture, opts)

    construct.net/en/make-games/manuals/addon-sdk/reference/graphics-interfaces/iwebglrenderer

  • Another option is to try out a JS QR library and use C3 JS integration to add it to your project.

    For example:

    github.com/nimiq/qr-scanner

    One caution on mobile. Last I checked, iOS (as of 13.2) does not support user-media (web camera) when using webkit (e.g. iOS app or PWA.) The Apple team claims to be 'working on it.'

    It should work with Desktop Chrome, Safari on iOS and Android.

  • Great post - well done TheRealDannyyy and Armaldio!

    A few comments on my Greenworks plugin (Greengrinds.) It's free, it's an extension of the official C3 plugin. It works with nw.js and Electron (using Armaldio's Electron For Construct.)

    I added ACEs for the following Greenworks APIs: Cloud File, more Achievements, Stats, and DLC. It's also C3 only.

  • For basics, see:

    partner.steamgames.com/doc/gettingstarted

    It does not need to be one binary. You can upload directories (such as an nw.js directory.)

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I usually follow this tutorial series when I need a refresh:

    youtube.com/watch

    This is mainly how to get your content up to Steam and publish it (but not all the marketing, biz and partner details.)

    Also, you can use one of the C3 Greenworks plugins to do achievements, etc.

    construct.net/en/make-games/addons/84/greenworks

    (Construct Official)

    or

    construct.net/en/make-games/addons/244/greengrinds

    (I extended the above plugin to add more Greenworks commands and it is also compatible with Electron build.)

  • Check out this (it has many limitations, but if the fates allow, maybe it will work for you :) )

    construct.net/en/forum/construct-3/plugin-sdk-10/copy-effect-143743

    It depends on render order, so if you place it on a certain layer it will copy everything under that layer (rendered before it.)

  • Example of denorm and clamping.

    /////////////////////////////////////////////////////////
    // Barrel
    
    //The current foreground texture co-ordinate
    varying mediump vec2 vTex;
    //The foreground texture sampler, to be sampled at vTex
    uniform lowp sampler2D samplerFront;
    //The current foreground rectangle being rendered
    uniform mediump vec2 srcStart;
    uniform mediump vec2 srcEnd;
    //The current foreground source rectangle being rendered
    uniform mediump vec2 srcOriginStart;
    uniform mediump vec2 srcOriginEnd;
    //The current foreground source rectangle being rendered, in layout 
    uniform mediump vec2 layoutStart;
    uniform mediump vec2 layoutEnd;
    //The background texture sampler used for background - blending effects
    uniform lowp sampler2D samplerBack;
    //The current background rectangle being rendered to, in texture co-ordinates, for background-blending effects
    uniform mediump vec2 destStart;
    uniform mediump vec2 destEnd;
    //The time in seconds since the runtime started. This can be used for animated effects
    uniform mediump float seconds;
    //The size of a texel in the foreground texture in texture co-ordinates
    uniform mediump vec2 pixelSize;
    //The current layer scale as a factor (i.e. 1 is unscaled)
    uniform mediump float layerScale;
    //The current layer angle in radians.
    uniform mediump float layerAngle;
    
    //effect.fx
    precision mediump float;
    
    uniform mediump float scale;
    
    void main(void)
    {
     mediump vec2 n = (vTex - srcOriginStart) / (srcOriginEnd - srcOriginStart);
    
     vec2 st = n - 0.5;
     float theta = atan(st.x, st.y);
     float rad = sqrt(dot(st, st));
     rad *= 1.0 + scale * pow(rad, 2.0);
     
     n = clamp(vec2( 0.5 + sin(theta) * rad, n.y), vec2(0.), vec2(1.));
    
     gl_FragColor = texture2D(samplerFront, mix(srcOriginStart,srcOriginEnd,n));
    
    }