3D Tiles and WebGl


If you are interested in helping with tiles, vaults, patches or documentation, this is the place for that.

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Saturday, 9th January 2016, 23:47

3D Tiles and WebGl

Hi all and happy new year.

First of all i want to thank the developers for supporting this great game so long.
I play dungeon crawl from linley's version and i have watched the progress and the improvements so far very close.

To the contribution part now :)
I am 3d freelance artist and i would love to play ( and even more to make the 3d objects ) for Dungeon crawl in real time 3d .
I think that a webGl front end would be very interesting with animated characters , visual effects , lighting etc.
I know that there is a lot of work have to be done in 3d part and in programming too but i would like to know what you think of that aspect.

Emmanouel
User avatar

Tomb Titivator

Posts: 792

Joined: Tuesday, 28th January 2014, 16:08

Post Sunday, 10th January 2016, 02:29

Re: 3D Tiles and WebGl

Just do it, the devs cant stop you.
If you are offended by something I've posted, just PM me. It probably wasn't intentional.

Blades Runner

Posts: 546

Joined: Saturday, 7th May 2011, 02:43

Post Sunday, 10th January 2016, 03:54

Re: 3D Tiles and WebGl

I disagree with greyr. 'Just doing it' will most likely result in whatever work you do becoming outdated and irrelevant. Collaboration is definitely necessary.
Keep in mind I am not a dev [on this game]. The following points are based on my relatively crude understanding of Crawl's architecture

* First you have to solve the problem of arranging the view such that the entire LOS is visible on screen. This is not too hard in my understanding, but it is absolutely compulsory, to avoid changing the gameplay.

* You also need to ensure that all tiles are visible, including those behind walls -- if you understand the difference there? Walls need to be visible but not block the players view of objects/enemies behind that wall (whether directly seen or 'remembered'). This IMO is a hard problem -- I suggest you look at Vulture's Eye and NotEye to see how they attempt to solve it.

* Perspective is also a problem (as in, you probably can't use a perspective camera), as you need to be able to measure number of tiles between any two places easily with your eye. An orthographic camera -- probably isometric -- would be necessary.

* There is, AFAIK, no problem with adding another frontend (ie. Crawl is designed to support multiple frontends)

* Literal 'Real time' play is not going to happen. I'm very confident the devs will back this up. Crawl is fundamentally a turn based game.
* 'Real time' animation is possible.. it has been discussed in the past as a possibility. Conclusion was that some changes to how Crawl handles timing/display updating behind the scenes would be necessary to make this possible. If that was achieved, presumably 'real time' animation could then be added to any front end.

* Have you looked into how many assets would be required? I have just investigated /usr/share/stone-soup/data/dat/tiles/{wall,feat,player,floor}.png -- which encompasses most in-game graphics used in the game. Many of these tiles are variations on others, that in 3d could be done by other means; still there are many unique objects that -would- need their own models.

* You would have to address maintainability: models would need to be fully editable in something freely available and reasonably accessible.

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Sunday, 10th January 2016, 10:28

Re: 3D Tiles and WebGl

Thanks both for your reply.

Greyr , i want to make something "official" and not just a fork version of the game. Also i do not want to make something already discussed and rejected as option or something that it is not possible.

Savageorange, i have some of this questions myself. My first and most important issue is NOT to change the feeling and the game play of the game.
I like the game very much and i see the 3d option as en enchansment and not a change.

> * First you have to solve the problem of arranging the view such that the entire LOS is visible on screen. This is not too hard in my understanding, but it is absolutely compulsory, to avoid changing the gameplay.

I think that there will be no problem with the LOS because the camera will be movable. Although the camera will be orthographic , the player will have the option to rotate , zoom and pan.
So if you want to see the entire LOS area or even the entire visible map you can zoom out.

> * You also need to ensure that all tiles are visible, including those behind walls -- if you understand the difference there? Walls need to be visible but not block the players view of objects/enemies behind that wall (whether directly seen or 'remembered'). This IMO is a hard problem -- I suggest you look at Vulture's Eye and NotEye to see how they attempt to solve it.

Thanks for the references about Vulture's Eye and NotEye. I checked both.
What i had in mind is some kind of transparency for the front tiles ( like Vulture's Eye ) or another option is that above the 3d tiles which have some item on them like trap ,stairs etc, will be a visible indicator ( of course along with the 3d item).
This indicator will be the according 2d existing icon ( for two reasons). First because all players are familiar with that icons and will know exactly what is on this tile and second because i think that the artwork that has be done on these tiles is fantastic and can be used on the UI for sure.

> * Perspective is also a problem (as in, you probably can't use a perspective camera), as you need to be able to measure number of tiles between any two places easily with your eye. An orthographic camera -- probably isometric -- would be necessary.

About that a fairly visible grid lines will be on the ground to separate the ground tiles. I agree that is nessesary to know the distances and the space measured in tiles.

> * There is, AFAIK, no problem with adding another frontend (ie. Crawl is designed to support multiple frontends)

That is very good news :)

> * Literal 'Real time' play is not going to happen. I'm very confident the devs will back this up. Crawl is fundamentally a turn based game.

No intention to change the game play at all. I mean the game to be made real time 3d , not pre-rendered as Vulture's Eye but rather as Diablo III, torchlight etc.

> * 'Real time' animation is possible.. it has been discussed in the past as a possibility. Conclusion was that some changes to how Crawl handles timing/display updating behind the scenes would be necessary to make this possible. If that was achieved, presumably 'real time' animation could then be added to any front end.

That's good also. Even some kind of idle animation , which are not affected from the game timing will be nice.

> * Have you looked into how many assets would be required? I have just investigated /usr/share/stone-soup/data/dat/tiles/{wall,feat,player,floor}.png -- which encompasses most in-game graphics used in the game. Many of these tiles are variations on others, that in 3d could be done by other means; still there are many unique objects that -would- need their own models.

Yes i checked the folders too .
The items and the stones are not very difficult to be made ( although they need a lot of time).
The classes and the interchangeable items are the problem. For example the same boots must fit in many classes.
But it is a project that will not finish in a short time and there will be a lot of alpha versions.

> * You would have to address maintainability: models would need to be fully editable in something freely available and reasonably accessible.

Yes , i am aware of that.

Blades Runner

Posts: 546

Joined: Saturday, 7th May 2011, 02:43

Post Sunday, 10th January 2016, 23:30

Re: 3D Tiles and WebGl

tyto wrote: > * First you have to solve the problem of arranging the view such that the entire LOS is visible on screen. This is not too hard in my understanding, but it is absolutely compulsory, to avoid changing the gameplay.

I think that there will be no problem with the LOS because the camera will be movable. Although the camera will be orthographic , the player will have the option to rotate , zoom and pan.
So if you want to see the entire LOS area or even the entire visible map you can zoom out.

Hmm. I don't think devs would agree with that (allowing it to be zoomed in beyond full-LOS. Allowing it to be zoomed out is fine). If you experiment with Tiles, it allows you to adjust tile size up and down (tile_cell_pixels variable in init.txt), but clamps tile size at the point where the entire LOS would not fit on screen. This is, IMO, because if you don't, you can be killed by something you (as a player) couldn't see, even though your character could.

What i had in mind is some kind of transparency for the front tiles ( like Vulture's Eye ) or another option is that above the 3d tiles which have some item on them like trap ,stairs etc, will be a visible indicator ( of course along with the 3d item).
This indicator will be the according 2d existing icon ( for two reasons). First because all players are familiar with that icons and will know exactly what is on this tile and second because i think that the artwork that has be done on these tiles is fantastic and can be used on the UI for sure.

Good idea! I am not completely sure, but it might also be possible to show more than one icon, in case of multiple items on a tile?

> * Literal 'Real time' play is not going to happen. I'm very confident the devs will back this up. Crawl is fundamentally a turn based game.

No intention to change the game play at all. I mean the game to be made real time 3d , not pre-rendered as Vulture's Eye but rather as Diablo III, torchlight etc.

In this case 'real time' is not the term that is appropriate for what you intended. In English, 'Real Time' is typically applied to game types such as first person shooter, or 'real time strategy' (like Warcraft, Starcraft..), where game time is passing continuously whether the player is acting or not; the game isn't based on 'turns' like DCSS or other roguelikes are.

Well.. this is the association of that phrase 'real time', with gaming. Which is why I made the distinction 'real time animation' -- a system where the game animates some things (usually environment -- flowing water, torches, etc) in real time, even though the game is actually running on a system of turns. Pixel Dungeon is an example of a roguelike that does that, and I think is the type of 'real time' you actually meant.

> * 'Real time' animation is possible.. it has been discussed in the past as a possibility. Conclusion was that some changes to how Crawl handles timing/display updating behind the scenes would be necessary to make this possible. If that was achieved, presumably 'real time' animation could then be added to any front end.

That's good also. Even some kind of idle animation , which are not affected from the game timing will be nice.

Idle animation actually hits the same problem. Crawl doesn't really have -any- 'display timing' (in the traditional sense) at all currently AFAIK; it just uses fixed (albeit configurable -- eg. travel_delay, explore_delay, rest_delay) delay amounts. We need a more standard 'main loop', where updates to the display can be done independently from events happening in the game.

> * You would have to address maintainability: models would need to be fully editable in something freely available and reasonably accessible.

Yes , i am aware of that.


Well, what is your idea for what is appropriate here? I didn't suggest Blender myself, because although it is free, and in my opinion a great program, it is frequently described as hard to learn / use.

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Thursday, 14th January 2016, 09:13

Re: 3D Tiles and WebGl

Hmm. I don't think devs would agree with that (allowing it to be zoomed in beyond full-LOS. Allowing it to be zoomed out is fine). If you experiment with Tiles, it allows you to adjust tile size up and down (tile_cell_pixels variable in init.txt), but clamps tile size at the point where the entire LOS would not fit on screen. This is, IMO, because if you don't, you can be killed by something you (as a player) couldn't see, even though your character could.


You are right. I hadn't thought that way. Ok , there will be limit to the zoom factor. It will prevent bigger zoom than LOS.

Good idea! I am not completely sure, but it might also be possible to show more than one icon, in case of multiple items on a tile?


Yes, it would be possible. Even if the items are too many a popup window could show all the items on that tile.

In this case 'real time' is not the term that is appropriate for what you intended. In English, 'Real Time' is typically applied to game types such as first person shooter, or 'real time strategy' (like Warcraft, Starcraft..), where game time is passing continuously whether the player is acting or not; the game isn't based on 'turns' like DCSS or other roguelikes are.

Well.. this is the association of that phrase 'real time', with gaming. Which is why I made the distinction 'real time animation' -- a system where the game animates some things (usually environment -- flowing water, torches, etc) in real time, even though the game is actually running on a system of turns. Pixel Dungeon is an example of a roguelike that does that, and I think is the type of 'real time' you actually meant.


I agree with the definition real time" in gaming.I meant "real time graphics/animations".
I had in mind to make the 3d version with "real time animations" like Pixel Dungeon too.

In Dungeon Crawl the "animation" of some tiles like the flames on the Makhleb altar is made by changing the tile every turn of the game.
In 3d version there would be no problem if the flames are animated in real time independently from the game timing.

> * You would have to address maintainability: models would need to be fully editable in something freely available and reasonably accessible.

Yes , i am aware of that.

Well, what is your idea for what is appropriate here? I didn't suggest Blender myself, because although it is free, and in my opinion a great program, it is frequently described as hard to learn / use.


I agree about blender. I use 3ds Max but the 3d software doesn't really maters.
The 3d meshes will be exported in Obj or Fbx format and the Textures would be Tga or png.
Any 3d program can import there files and modify the mesh.

This is a link with a first test of how may the map tiles look in 3d.
https://www.dropbox.com/s/wgpo9rucxzyfd ... 3.jpg?dl=0

Crypt Cleanser

Posts: 754

Joined: Monday, 29th September 2014, 09:04

Post Thursday, 14th January 2016, 10:16

Re: 3D Tiles and WebGl

Implementing this could be done without any changes to the core game, if you do it in webtiles code. That would involve only updating the javascript/react code to display the game in webgl rather than on a canvas.

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Wednesday, 20th January 2016, 15:37

Re: 3D Tiles and WebGl

Implementing this could be done without any changes to the core game, if you do it in webtiles code. That would involve only updating the javascript/react code to display the game in webgl rather than on a canvas.


That is the concept. The main engine of the game to remain intact and add a graphical layer, most like a front end.

Dungeon Dilettante

Posts: 3

Joined: Tuesday, 19th January 2016, 21:39

Post Monday, 25th January 2016, 18:19

Re: 3D Tiles and WebGl

:) ;)

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Saturday, 28th May 2016, 19:56

Re: 3D Tiles and WebGl

Hi all,

Here is an update from the DCSS 3D project.
I have attached a screenshot of the first implementation tests.

So far we are able to communicate with the DCSS server from Unity engine ( more on this from Theof which is the coder).
Some of the 3D tiles are already made along with some items.
There is a lot of work ahead , but we do one step at a time.

The game will run (as initially planned) as a front end for the web version of DCSS and will not alter any feature of the game.

Some lighting tests and technical issues have checked and solved and the interface is on the way..

More updates soon.
As always , comments and suggestions always welcome.
Attachments
DCSS_01.jpg
DCSS_01.jpg (191.68 KiB) Viewed 3261 times

For this message the author tyto has received thanks: 18
Brannock, chequers, mopl, ontoclasm, PleasingFungus, Shard1697, Sprucery, Steel Neuron, wheals, zxc23 and 8 more users
User avatar

Halls Hopper

Posts: 89

Joined: Monday, 11th April 2016, 21:48

Post Saturday, 28th May 2016, 20:46

Re: 3D Tiles and WebGl

Holy shit.
remove handsome distillation

For this message the author pumpyscump has received thanks:
vergil

Dungeon Dilettante

Posts: 2

Joined: Saturday, 28th May 2016, 21:09

Post Saturday, 28th May 2016, 21:12

Re: 3D Tiles and WebGl

Oh Man!. This is something incredible.

Dungeon Dilettante

Posts: 2

Joined: Saturday, 28th May 2016, 21:09

Post Sunday, 29th May 2016, 06:54

Re: 3D Tiles and WebGl

Just put it here )
https://www.youtube.com/watch?v=yfhg4Qk-VYI
http://blog.deadreckoned.com/
I really like how the author solved the problem with a blocked view behind the walls.
There is some shots:
Spoiler: show
Image
Image
Image
Image
Last edited by AcidCactus on Sunday, 29th May 2016, 07:58, edited 1 time in total.
User avatar

Halls Hopper

Posts: 89

Joined: Monday, 11th April 2016, 21:48

Post Sunday, 29th May 2016, 07:41

Re: 3D Tiles and WebGl

Those potions look pretty good, but the little blobs (fruit?) look a bit like little blobs. :)

Have you tested simply putting the 2d assets for items and creatures into your 3d world, vertical and "flat" so to speak? Could save a ton of work, and those 2d assets are getting updated constantly, which gives you more time to make hauntingly beautiful clouds!
remove handsome distillation

Temple Termagant

Posts: 6

Joined: Saturday, 9th January 2016, 23:40

Post Sunday, 29th May 2016, 13:07

Re: 3D Tiles and WebGl

Thank you all for your feedback.

AcidCactus thanks for the links. It is a good idea to make the walls half the size. We will check it to see how it looks. I believe though that it will reduce the claustrophobic feeling of the game.
Except that the player can freely move the camera at any direction to see if something is behind the walls.
The new items will be outlined with a bright color and will be clearly visible (even behind the wall).

Pumpyscump, the items will be more bright than they are now. We cannot use the 2d assets to replace the 3d ones because the result of the combination of 3D environment and 2D items is not good.
The 2D assets are excellent and i like them very much .Most of them will be used for the interface and for "indications" on the map along with the 3d items.
User avatar

Swamp Slogger

Posts: 181

Joined: Wednesday, 18th March 2015, 21:13

Post Monday, 11th July 2016, 15:14

Re: 3D Tiles and WebGl

First of all. Amazing work so far!
Has this been continued any further?
Formicid Lyfe

Crypt Cleanser

Posts: 714

Joined: Saturday, 5th December 2015, 06:56

Post Tuesday, 9th August 2016, 10:27

Re: 3D Tiles and WebGl

Holy shit. The absolute madman. He actually drew stuff and didn't just talk.

Swamp Slogger

Posts: 170

Joined: Wednesday, 13th July 2016, 09:30

Post Tuesday, 9th August 2016, 12:21

Re: 3D Tiles and WebGl

Looks really, really awesome!
Online Statistics
Road to: Great Ds (6/25): DsFi^Gozag 3 R, DsGl^Qaz 4 R, DsMo^Chei 5 R, {DsHu^Uska 6 R, DsAs^Uska 7 R}, DsAr^Chei 8 R.
In progress: DsWn... Currently out of time. Maybe someday.

Watch my streams here

Temple Termagant

Posts: 8

Joined: Thursday, 29th September 2016, 22:26

Post Thursday, 29th September 2016, 22:28

Re: 3D Tiles and WebGl

The best isometric tiles ever... Beautiful! :oops:

Dungeon Dilettante

Posts: 1

Joined: Monday, 19th December 2016, 15:31

Post Monday, 19th December 2016, 15:32

Re: 3D Tiles and WebGl

Two questions: First, updates on this fantastic work you're doing? I think we'd all love to hear a thing! Secondly, is there a working build of that game that was screencap'd above from the deadreckoned site?

Return to Contributions

Who is online

Users browsing this forum: No registered users and 1 guest

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.