Mesh Distortion in Editor

1 favourites
From the Asset Store
mesh 3D objects "hemisphere, oval, tunnel and other various shapes."
  • Hello there,

    I just saw the mesh distortion feature, and it looks great.

    I wanted to know if it's possible to add a mesh distortion in the editor, and make something similar the sprite shape of Unity.

    Basically, it should be a sprite with tiled background and custom sides that allows you to distort the sprite directly in the editor adding more polygon.

    I have been able to make my own terrain generator from the sprite as described above, however when I need to do some curvy terrain it will take extra resources because I need to add more sprites instead to distort the single sprite.

    The GIF show what I have done, however if you see the Sprite Shape in Unity, you will see that it would be much easier to make "dynamic" levels.

    Thanks

    Tagged:

  • We're planning to look in to developing an editor feature for this.

  • We're planning to look in to developing an editor feature for this.

    Ashley This would be a game changer for anyone who develop 2d platform! And when implemented it should be on the homepage of the website! Considering that Construct is a tool to develop software/game 2d, this would be a HUGE feature for any artist and game designer.

    I bet that I'm not the only one who had problem figuring out how to implement a good looking terrain without killing the performance. Here I'm describing my experience so far about designing 2d levels:

    With tilemap it was too complicate to make nice graphics without puzzling with the tiles.

    Problem with tilemap:

    - Platforms are limited based on the tiles itself (you can't make curvy terrain without making a lot of tiles matching together).

    - If you need to change something in the level, you will need to move all the tiles again and it takes ages to design a level.

    - If for some reason you change the size of the source tilemap png, then you need to start over again.

    - If you want to match different design terrain, then good luck.

    - When using tilemap, it is extremely hard to have the texture in front of the player to simulate the grass. I have tried multiple time to have the grass on top of the player and is is too way complicate.

    - Matching the tilemap with the solid is a huge problem.

    Basically, tilemap is good for most people who develop a pixel art game. If you want to do a game design like Rayman, it would be extremely hard if not impossible.

    So the best solution I have found is to simulate this sprite shape using my own functions. It works good because I use masks and a lot of tiled background. The pro using this approach is:

    - You can change the sprites/design over time without braking the whole game.

    - Easy to make and edit a level, take minutes to design complex level.

    - To make the design, you need two 46X46 tiled background. Basically, to make a whole new terrain it takes 10 minutes. In tilemap, it takes hours if not days.

    - If you want to change the whole design in a level, it takes a 3 clicks.

    - Sprite can be "alive". The columns on the gif are movable.

    - Infinite ways to make a level. Easy copy/paste between layouts.

    Problem with this approach:

    - Hundreds of objects. for 100 sprites, there is an average of 300 tiled background spawned.

    - You can't see what you are designing, so you must use a lot of immagination.

    - Use of multiple layer and force own texture. (performance)

    To conclude, I have tried both solution (tilemap and sprite+tiledBackground). It ended up that sprite+tiledBackground is more performant then tilemap, if you design long level.

    With Sprite Shape, I'm pretty sure that most of the performance problem will be solved, and you would allow designer to design the level in real time in construct.

    PS: I compared tilemap vs sprite+TiledBackground because these are the only choice we have when designing a level. Also, I forgot to mention that I made this method because I didn't want to deal with any tiled background manually. I can't imagine someone design a level with 1000 objects in the editor, only for the terrain.

  • please integrate mesh distortion controls inside timeline editor, to be able to keyframe distortion points.

  • I can imagine Construct 3 basically becoming what Flash was for animators with that.

  • I'm hoping this will also be very useful for HD art where you have a lot of empty space in large sprites, to reduce overdraw by 'collapsing' mesh points in transparent parts of the sprite.

  • Hi Ashley, is there any plan to develop this feature similar to the one in Unity called "Sprite Shape"? The Mesh feature is out, what it would need is "only" repeated background images on the edges.

    I bet most of the users will use this feature since construct 3 is mainly for 2d games. Thanks

  • I'm not familiar with the Unity tool, but you can repeat mesh distorted images with Tiled Background.

  • I'm not familiar with the Unity tool, but you can repeat mesh distorted images with Tiled Background.

    Hi Ashley, this is how works the Unity tool in the editor:

    The problem using the mesh distortion directly in the editor is that is extremely hard to manage thousands of object only for making a simple 2d level.

    For my game, I applied the concept of the unity tool before the mesh editor was released:

    You see, when I make a level using this method it allows me to manage few objects to actual build the level design. The design flow is pretty fast and it allows me to build nice looking levels pretty quickly without copy and paste hundreds of objects. The only problem is that I need to use multiple sprite to design curvy shapes, and I cannot see the result in real time since the level is generated in-game.

    That's where the mesh distortion can take place.

    If is possible to build a simpler version of the unity tool, it would allow us to build up platform directly in the editor without the use of hundreds of objects.

    The property of the object would be kind simple:

    Repeated background in the image itself. The only addition would be add the border (and angles) from a custom image that we can choose, and repeat it. With the mesh editor, the border could follow the shape of the original object.

    If Construct3 can support this, it would be a game changer for anyone who is making a platform 2d.

    Thanks

  • Sounds like you're describing mesh distorting applied to a 9-patch style object to me? Or basically a flexible 9 patch that can be created with a dynamic number of edges to make any polyhedron, or even just a circle with repeating center/edge textures that can be mesh distorted... That would be pretty nifty.

    Otherwise, you can already distort a sprite or tiled background directly, or use a mesh distorted sprite with a blending mode applied on top of a tiled background to paint "textures" over dynamic shapes.

  • You could create a 9patch styled object using the collision polygon points by stretching a tiled bg between poly points.

    Figuring out the index is a bit iffy though.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Did I say iffy?

    dropbox.com/s/wv44tu2wlncftam/polypointsmeshbug.c3p

    Um theres a couple bugs there.

  • Sounds like you're describing mesh distorting applied to a 9-patch style object to me? Or basically a flexible 9 patch that can be created with a dynamic number of edges to make any polyhedron, or even just a circle with repeating center/edge textures that can be mesh distorted... That would be pretty nifty.

    Otherwise, you can already distort a sprite or tiled background directly, or use a mesh distorted sprite with a blending mode applied on top of a tiled background to paint "textures" over dynamic shapes.

    Using the sprite or tiled background wouldn't solve the actual problem. You would still need to use hundreds of objects to design a level. You would need to use a sprite as a collision, then on top of it the tiled backgrounds.

    but yes, it should work similar to the 9-path, with the difference that can be solid. The idea is to use one single object.

    newt

    I tried the example but I didn't quite understand. Are you trying to spawn a sprite for each edge point?

  • Yes it should put a sprite on each collision polygon point, but the mesh is doing weird things to it.

    If it is supposed to be like it is, then you would have to disregard my previous post suggestion.

  • Yes it should put a sprite on each collision polygon point, but the mesh is doing weird things to it.

    If it is supposed to be like it is, then you would have to disregard my previous post suggestion.

    Well, in my game I generate all the design depending on the specific sprite. If I can achieve the same method with the mesh distortion, where the sprite distorted spawn on the edge the tiled background with the right amount of polygon following the sprite distortion it could work.

    However, the result will be always slight different from the unity tool. This sprite shape should allow us to design a level as the artist whish without using thousands of objects on the screen editor.

    an amazing example of a smart way to design level can be seen in the Rayman game:

    Subscribe to Construct videos now

    As someone suggested already, is already possible to do it by using the editor, but is not realistic. When I started developing the game, I spent a long time to understand how I could achieve a nice level design without making the level design crazy and destroy the mobile performance. I tried the manual way where you place all the design in the editor. After a while the level gets too big, and if you need to change the level it is just too hard. After I while, I decide to develop my own "engine" that would allow me to develop the design similar to the video above, with the difference that it still have a lot of limitations.

    Also, if this tool is built into Construct, I bet the performance would be much better compared to thousands of object needed. If you think about, it is quite simple what the unity tool does. It allows a solid to spawn tiled background edges (including the corners/distance between the collision solid) selecting specific design for each side. Then, the designer just build up the platforms making shapes that would require hundreds of single objects to do.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)