Mikal's Forum Posts

  • Nice work, I like the style and the goal of teaching a new language.

  • You can try this, as dop2000 said, you can go through all the instances you want to check and use these methods to check if the mouse is over the collision poly of the instance and then use the effects api to control the instance's effects.

    construct.net/en/make-games/manuals/construct-3/scripting/scripting-reference/object-interfaces/iworldinstance

    - containsPoint(x, y) (check if the mouse x,y is within the collision poly of the instance)

    - effects (returns an object with the details on the effects on the instance)

    construct.net/en/make-games/manuals/construct-3/scripting/scripting-reference/object-interfaces/ieffectinstance

    - setParameter(index, value) (set effect parameter)

  • I am not sure that I understand exactly what you want, but in case it helps, my FQZ plugin is using the 3D webgl aspect of C3 to make quads that could be used as 3D billboard textures.

    It has a mode where you can specify the x,y,z of each vertex of a quad. You could then use glmatrix.js and C3 scripting to do matrix math and set the position of the quad. I have included a mode where you can pull out the current camera P and MV matrices also if needed. Or you can just control the camera directly using camera location and look at.

    Here's an example of it in use (this is with just billboard textures rotated to player view, etc.)

    youtube.com/watch

    I am over on the Construct Community Discord, DM me there and I'll give you a key to try it if you want.

    I don't know of another way to use C3 w/ 3D except for using Z elevation with sprites.

    In your example youtube video, I think most (all?) of that could be done with almost vanilla C3. However it sounds like that still is not what you want?

    Here's an example:

    alcex.itch.io/psuedo-3d-racer-in-construct-3

    Another example of matrix math w/ my plugin is this project (matrix math done in events, etc.):

    mitsuhashish.itch.io/3djs

  • Here's a couple things done in C3 that might be interesting / inspiring for you to check out (the FQZ plugin is mine.)

    Raycasting in C3

    uberdroidgames.itch.io/construct-ray-casting-game-kit

    3D Sprites (I have an example which uses glmatrix.net )

    kindeyegames.itch.io/funkyquadz-for-construct

    - An issue from your list: effects not supported in FQZ due to how C3 handles effects.

    I do go back and forth myself, I like using FQZ for relatively simple 3D eye candy, but if I was going to do a full blown 3D game, I think I would look something else that also handled 3D physics, etc. (e.g. Unity, UE, Godot, Babylon, etc.) On the other hand for 2D gameplay with 3D eye candy (e.g. Doom like, my 360 view game, simple 2.5D driving game, etc.) C3 + some 3D tools can be a fun tool to use.

  • The C3 manual has some good comments on this too, I appreciate a good manual!

    construct.net/en/make-games/manuals/construct-3/project-primitives/projects

    Downscaling quality

    Adjusts the tradeoff between rendering quality and memory use when resizing images to smaller than their original size (downscaling). The options are:

    Low quality: mipmaps are disabled (reducing memory use), but downscaled sprites may appear blocky or pixellated. This mode is not recommended for most games, since disabling mipmaps can reduce performance.

    Medium quality: mipmaps are enabled. Downscaling sprites generally looks better.

    High quality: mipmaps are enabled and the spritesheet after export pads out all images to power-of-two sizes. This can significantly increase memory use, but can resolve two minor rendering issues: light fringing that can sometimes occur along the borders of downscaled objects, or a quality change in the last frame of an animation. Do not use this mode unless a rendering artefact is specifically observed and selecting this mode can be observed to resolve it: the increased memory usage can be very significant, and is not a cost that should be added for no reason. For more information see Memory usage.

  • Just an idea: add 4+ pixels of transparency around the 'Front-End' sprite, it looks like that texture is being bi/tri linear filtered into your circle sprite rendered image (if you are zoomed in or out, you might also be at a different mip level so you may need more than 1 pixel of source transparency buffer between the images.) Also if you want to do some testing/debugging before you try that, change the bottom of the Front-end sprite to all red pixels and see if that changes the color of the 'line' at the top of your circle sprite.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • That's great progress! I really like the shadows and tilt, along with minimal art style this will look really good.

  • Nice work! I don't know why, but I really like this idea of 2D map generating 3D, but the game logic all driven by Construct 2D logic, which makes it so easy to develop for. Have you made further progress on this?

    I have a similar demo in FQZ, also Uberdroid's template does something similar, but renders with raycasting and is nice too. uberdroidgames.itch.io/construct-ray-casting-game-kit

    I am looking forward to seeing your progress!

  • Thanks Sparsha, and SuperGuy!

  • I think you already found one usage!

    It can also be used in cases like this (it's just eye candy, but some people like it). Jumobtron effect for a fight in a stadium.

    The limitation is that the zoomed in area cannot be _in front_ of the jumbotron (copy effect), so it would need to be higher than the action.

    I was also experimenting with using it for psuedo 'stereo vision' for a HMD for my FQZ plugin or EQR effect, not quite working yet, but it seems possible.

  • Interesting, I am not sure why 'rendering things throughout the fight' would not work, if you placed the Sprite with Copy effect on the top layer.

    However perhaps that is it, you want this copy the background behind the 'action'? That would not work. If you had it as jumbotron placed so that it was never blocked by the fight, it could be on a top layer and work, though that may not work wit the style you want. Good luck with it!

  • Update for the FunkyQuadZ addon, added a texture wrap feature for endless texture scrolling, check it out here:

    kindeyegames.itch.io/funkyquadz-for-construct/devlog/150544/340-add-limited-texture-wrap-feature

    Example:

  • IF you want a live 'jumbotron' of the current action in a game (e.g. a zoom in of a fight), try this effect I created:

    construct.net/en/make-games/addons/280/copy

    It copies a a region of the screen to a sprite. Place it on 'top' of whatever you want to capture (the other elements must be rendered first.)

    Example in action:

    twitter.com/kindeyegames/status/1125833321865404416

  • You need to get the reference to the instance, then apply the methods to that instance for example (untested):

    // Get the first instance of the Array object
    let firstArray = runtime.objects.Array.getFirstInstance();
    for(let i=1; i<4; i++){ for(let j=1; j<4; j++){
    firstArray.setAt(Math.random(1,5),i,j);
    } }
    
  • While we are waiting for the stable document update here are the functions I see in the debugger for the JSON SDK (beta r201)