godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
91.1k stars 21.18k forks source link

Add smart texture system. #1578

Closed sebwojtasik closed 4 years ago

sebwojtasik commented 9 years ago

How about adding texture system as seen in this video https://www.youtube.com/watch?v=d3SSBeVpaVE ? I think it would be really cool atleast for one open source engine to leave outdated tiling system.

draxdeveloper commented 9 years ago

2015-03-26 11:43 GMT-03:00 Sebastian notifications@github.com:

m as seen in

tiling system is not outdated, it's useful in some contexts

David Aguiar de Aquino Paiva

sebwojtasik commented 9 years ago

I meant that it gives much more freedom to artist/level designer, but everybody has their views :)

draxdeveloper commented 9 years ago

i don't even know the texture system... i Just saying that tilemap is not outdated, you can use both

sebwojtasik commented 9 years ago

Using of tilemap is more time consuming, and there is no other method implemented in Godot.

draxdeveloper commented 9 years ago

i can't see the vid now, so later i come back here with a better opinion

draxdeveloper commented 9 years ago

but like i said, tiling is useful in some projects, like a maze based 2d project

bojidar-bg commented 9 years ago

@TheWilfen Maybe this can be made with custom shaders or something similar?

TheoXD commented 9 years ago

There was a discussion about adding a 2D triangulation library like Polypartition (don't remember what for exactly) and this is essential for filling the insides of the terrain the way it's done here. Outsides is just a procedural geometry building along the curves. @draxdeveloper, smart texture reduces the number of textures significantly. Tiling has been used for decades because hardware couldn't handle anything better than that back then, plus it needs different variations of the same texture in different orientation. And let's not forget "retro" games that want to make an illusion like if it was made 20 years ago, that's probably the reason it's still around.

draxdeveloper commented 9 years ago

ok, see the vídeo now... Sounds great, but not easy to implement

2015-03-27 11:37 GMT-03:00 TheoXD notifications@github.com:

There was a discussion about adding a 2D triangulation library like Polypartition (don't remember what for exactly) and this is essential for filling the insides of the terrain the way it's done here. Outsides is just a procedural geometry building along the curves. @draxdeveloper https://github.com/draxdeveloper, smart texture reduces the number of textures significantly. Tiling has been used for decades because hardware couldn't handle anything better than that back then, plus it needs different variations of the same texture in different orientation. And let's not forget "retro" games that want to make an illusion like if it was made 20 years ago, that's probably the reason it's still around.

— Reply to this email directly or view it on GitHub https://github.com/okamstudio/godot/issues/1578#issuecomment-86961011.

David Aguiar de Aquino Paiva

Ace-Dragon commented 9 years ago

This would probably be functionality you would add to the 2D polygon drawing tools already in Godot, kind of a special material feature that can take multiple textures with an alpha mask and apply them / distort them based on slope.

I'm wondering is this can be a sort of texture-driven coordinate type for the Visual Shader Editor, the advantage is that something like this could perhaps be done for 3D imported meshes as well.

reduz commented 9 years ago

This is interesting, is there any open source game engine that has a good reference implementation? While this looks kind of obvious, i'm not sure what kind of parameters you would like to use..

sebwojtasik commented 9 years ago

@reduz The engine prezented in the video is open source but it's written in ActionScript so Idk if you can make any use of it. Here's the link: https://github.com/samhellawell/oni

RodZill4 commented 8 years ago

I started a Godot plugin named Platform2d (https://github.com/RodZill4/godot-platform2d). It's nowhere near what's shown on the video yet, but that's what I'm aiming for (for the ThickPlatform class). I'm not sure if GDScript is the best approach performance wise, but porting it to C++ would be easy.

fire commented 5 years ago

I was unable to view the youtube video, is this still a problem?

bojidar-bg commented 5 years ago

I think there are some plugins showing that it is possible to do.

Either way, here is another video of the smart textures (taken from the oni repository linked above): https://www.youtube.com/watch?v=6qXzrqnizQo

akien-mga commented 4 years ago

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.

The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.

If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!