Mikal's Forum Posts

  • I was working to add an effect, but the upload was rejected with this message:

    • The extension .fx is not permitted. (Path in archive: '/effect.fx')

    Should we be able to add effects now, or is there another method? I set the 'type' to effect.

  • Looking forward to road-testing this with version control - my no.1 request for ages!

    Look forward to a Mac version so I can use it with my main laptop.

    Thanks Scirra.

    +1 on Mac version, since I am switching over to that for my main dev workstation (iMac and Macbook, so xcode and deploy to iOS is simpler.) Right now I am using bootcamp with Win 10 (but switching time is a pain.)

  • Current solution with multi-file picker is working for me. I have a local addons directory which I added to my bitbucket source control along with the separate C3 project source files (using desktop C3 version.)

    When I want bring up a new desktop C3 instance on another PC, I clone the bitbucket depot, load C3, point the file picker at the dir, hit ctrl-A and add them all. Thanks Ashley

  • This is working, well. Saves much faster / incremental (compared to cloud save.) I am also now using source control again, which I really appreciate for my emerging dev flow: (bitbucket integrated with HackNPlan).

  • Played it, that's a bit of fun, just tried the first two aliens. What other variation is there besides alien size? If this is for touch, how about launching the missiles with an up swipe and the missiles speed are controlled by the speed of the swipe?

    I suggest also adding a more interesting 'kill alien' animation (explosion? alien shrink? missiles drill in? etc.)

    Make first few aliens very easy so player progresses quickly, maybe just 5 hits at first? Don't want to frustrate the player that they cannot get past the first level (unless you are the arcade game Donkey Kong!)

  • Played a little bit, great graphics and enemies, frantic play. I like the minimap (I hope you will add a little juice to it over time.)

    When I 'died', the ship disappeared, but I did not lose a ship, I could still fire, but ship was not visible and I could not move.

    Keep up the good progress!

  • Gigatron - thanks for the update, will be patient.

  • Here's an example from my game. I am using the normal map effect, so I could not use Paster directly.

    Some learnings putting the effect into real development:

    • Need to use ViewportTop/Bottom instead of LayoutHeight to calculate OffsetY (since in my example, I am zooming in and out and the Viewport is changing.) Updating the example with this change (even though not needed in the example which is not zoomed.)
    • Placement of effect in z-order and layer order matters (not surprising since it's basically blending)
    • Adding some 'blur' effects also is good for non-perfect reflected surface (e.g. water in this case.)
  • I added a request, with some simple suggestions for solutions.

    https://construct3.ideas.aha.io/ideas/C3-I-404

    Ability to install multiple addons at once

    [quote:tp2c81gw]When doing a new C3 install on a new device or refresh of web browser cache on current PC, it will allow the user to quickly install all the necessary addons quickly. For example, allow multiple *.c3addons files to be selected at once in the file picker for the addon manager and load addons all w/o confirmation dialog box for each addon (instead just a single confirmation with all of the addons listed, 1 per line.) Alternately, have the ability to save the file locally that has all addons listed and have a method to use the file to load all of the addons.

  • Inspiration time.

    Attended the online conference Visual;Conference, great speakers and good simultaneous discord chat. The 2017 conference is already on youtube and the 2018 is being uploaded, see the conf link for details. Good stuff to check out, recommended.

    My game will be a hybrid VN / point and click, so a lot of content was spot on and inspiring, even if my genre is not in the main VN genre of 'romance'. That being said they showed a number of existing VNs also outside that main genre.

    A few quick takeaways:

    • Create a good story outline
    • Create full script before doing any professional voice acting
    • Indie voice acting cost: $3/line or $100/hour
    • Limit each line in dialogue to < 160 characters between action (change portrait animation, continue prompt, change speaker, etc.). Otherwise players skip the text.
    • Some Visual Novel platforms earn $1M/day! Choices / Episodes - using freemium model.
    • Get solid contracts for IP or license details (e.g. music, art, code).
  • Experimental effect.

    I wanted to create a water reflection for my game and used the Paster plugin and it worked well, however then I added effects to the objects that I was reflecting and found out that Paster did not work with objects with effects. So, I started looking at trying to make an effect that does a reflection of the 'background' across the Y axis as I needed in my game. Here is my first result which will hopefully work for me and may work for others.

    If you don't need to use effects on objects, you may also want to check out Paster instead.

    In this implementation, you must update the OffsetY parameter of the effect, depending on the location of the sprite using the effect. See the *.c3p for an example. In this example I set the origin of the sprite to the top, so the reflection starts at the top of the sprite. I imagine rendering order / layers / z-order matters for this effect, but I have not tested many variations (the example has only two layers.)

    The example is also using the Skend effect to show that it works with an effect. You can grab the C3 Skend effect here: Skend C3 Thread.

    Effect: ReflectY.c3addon

    Project: ReflectYSkendTest.c3p - also requires Skend effect.

    [Edit] Updated project file to handle zooming viewport.

    Example with moving sprite reflection:

  • Yes, sometimes there are problems with the automatic conversion, since I did not develop the original plugin, it will be tough for me to debug, perhaps send it back to gamedistribution.com to check it out. You can also take a look at the chrome browser debug console to see if you see some errors.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hi, I'm interested in using this fx, but reading the c2 thread it appears it doesn't work when exported? Is this correct for c3?

    [quote:18o1lchx]Effects like seamless screw up when exported as it doesnt take into consideration that construct bundles images into sprite sheets. Something similar could be happening with Skend.

    Thanks.

    With the changes to the effect using srcOriginStart and srcOriginEnd (for scaling and clamping), it should take care of how C3 bundles images into sprite sheets.

    This post helps explain the reasoning:

  • I took another crack at it, bilgekaan, want to try a new version? Thanks for all the testing! Updated link in OP.

    I added this:

    tex = clamp(tex, srcOriginStart, srcOriginEnd);[/code:g8bmrfq7]
    Now the texture being sampled should clamp to the edges of the sprites texture in the spritesheet, regardless of how big the spritesheet itself is. Be aware of the clamping, it will repeat the edges of the texture as the tex uv clamp. In this case, since the edges around the grass sprite are transparent, it works well. So, you should no longer need a lot of padding (except to make sure the actual rendered sprite does not clip.)
    
    I also created a new effect SkendPow which lets you adjust the exponent which controls the skew/bend, in the original effect this was fixed at '2.0', but now you have another parameter to play with. Truth be told, '2.0' looks the best to my eye, but high numbers make the lower part of the grass look more 'stiff', something to try for different effects. SkendPow is not directly compatible because it has an extra parameter, something to be aware of.
  • I am not sure why the behavior is different between C3 and C2, but in C3 the wrong skend behavior shows up when there are more sprites in the project (and when sprites are packed into some large textures.) To resolve this I normalized the delta x offset based on srcStart/SrcEnd and also switched back to pixelSize.y. See comments in the effect.fx code below.

    I updated the c3addon in the OP with this new version, bilgekaan please try it again.

    I tried a few tests with a different number of other sprites and checked for how the textures were packed using the chrome debugger, the effect worked across a few cases, but watch for the skend effect changing as you change the number of sprite objects (not instances) and size of the sprite source texture (animation).

    Also the more you skend, you may need to 'pad' in your original texture or you'll get clipping and perhaps sampling neighboring textures in the case of packed textures.

    Here's the new code:

    /////////////////////////////////////////////////////////
    // Skend effect
    varying mediump vec2 vTex;
    uniform lowp sampler2D samplerFront;
    
    uniform lowp float pixelWidth;
    uniform lowp float pixelHeight;
    uniform lowp float Skend;
    uniform mediump vec2 pixelSize;
    uniform mediump vec2 srcEnd;
    uniform mediump vec2 srcStart;
    uniform mediump vec2 srcOriginStart;
    uniform mediump vec2 srcOriginEnd;
    uniform mediump vec2 layoutStart;
    uniform mediump vec2 layoutEnd;
    
    void main(void)
    {	
    	mediump vec2 tex = vTex;
    	mediump vec2 texOffset = tex - srcStart;
    	
    	// Original from C2 effect, did not work with sprite packing in C3 and pixelHeight did not seem to work
    	// tex.y -= (pixelHeight*Skend)*pow(tex.x,2.0);
    	// Instead, calculate the normalised position n of vTex in the foreground rectangle and use that for Skend amount
    	mediump vec2 n = (vTex - srcOriginStart) / (srcOriginEnd - srcOriginStart);
    	tex.y -= (pixelSize.y*Skend)*pow(n.x,2.0);
    		
    	gl_FragColor = texture2D(samplerFront,tex);
    }[/code:1a37uoab]