Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411469 Posts in 69368 Topics- by 58422 Members - Latest Member: daffodil_dev

April 23, 2024, 05:03:32 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsLocomancer [VR Model Trains] - Vive/Rift+Touch [Released on Steam/itch]
Pages: 1 ... 10 11 [12] 13 14 ... 18
Print
Author Topic: Locomancer [VR Model Trains] - Vive/Rift+Touch [Released on Steam/itch]  (Read 36698 times)
Selkcip
Level 1
*



View Profile
« Reply #220 on: November 08, 2016, 03:32:50 AM »





The other night I noticed that Unity wasn't batching as many objects as I thought it had been.

Dynamic batching is where you take a bunch of moving objects and combine their meshes into a single large mesh so that you can draw them all at once instead of once at a time. In theory this improves rendering performance, but has a CPU cost as it's done every frame so Unity has a set of rules to determine if an object gets batched.

A bunch of objects that I think should meet these rules apparently don't. However, since most of them end up snapped to a table I decided to write my own semi-dynamic batching system. Whenever an object snaps to a table it gets added to that table's batch.

This video is a bit of an exaggeration as I disabled adaptive quality (changes the rendering resolution) as well as async and interleaved reprojection. As you can see, without batching about every other frame is being dropped. In headset this produces horrible stuttering. As soon as I turn on batching, the frame render time is cut in half and the stuttering is gone aside from the occasional hitch.

There is a slight performance hit when adding or removing an object from a batch, but hopefully I can reduce this and generally improve performance.
Logged
CobaltHusky93
Level 0
***


View Profile
« Reply #221 on: November 08, 2016, 04:21:47 PM »

That's a pretty awesome optimization even if exaggerated a little bit! Makes the experiences that much better.
Logged
Selkcip
Level 1
*



View Profile
« Reply #222 on: November 15, 2016, 05:29:14 AM »

The BART cars are done. They have interactive doors that you can open by grabbing or by using the door control levers in a cabbed car.

The to scale length-wise ones are really long, this mixed with the short couplings is problematic as they have trouble going around the smaller curves. So I made medium and small variants that handle them better.

The short couplings still make it difficult, but I wanted the cars to be coupled as close together as possible since most MUs like this are connected at the ends. The actual minimum turn radius for BART is 120m and the current largest curve is 40m. I suppose I could add a curve that goes from one corner of a 100m x 100m table to the other. Would people like that? Probably.

I wanted to have more content before releasing another update, but I didn't get much done one week and then I got distracted by the batching stuff so I think I'm going to push these new cars/MU support sooner than later. Then make some scenery to go with them as a later update.

I'm not sure when I'm going to push the batching stuff, there's currently a very noticeable stutter when an object is batched (which is probably why Unity has such strict requirements).

I also talked to some game dev friends and they all agreed that multiplayer probably isn't as important as I thought for a game like this. With that in mind I'm thinking about shelving that entirely in favor of focusing on automated layout and Steam workshop support.
Logged
FluffyJenkins
Level 0
***



View Profile
« Reply #223 on: November 15, 2016, 07:39:22 AM »

Multiplayer is more the thing you add when everything is done and optimized and stuff.... I like the sound of automated layouts though
Logged
Selkcip
Level 1
*



View Profile
« Reply #224 on: November 22, 2016, 04:30:28 AM »

I pushed the BART/MU/Batching update today. I also added the ability to hide the toolbox (button inside) and bring it back with the menu button.

Batching is disabled by default, but you can turn it on in the toolbox. This setting isn't persistent in case it causes any issues that prevent you from turning it off. One of my worries that was hitching introduced by batching would negate any positive effects. However in testing it seemed like having reprojection enabled makes the hitches less noticeable.

I still don't know how much of a performance increase batching provides so it would be great to hear if it makes large layouts run better.

I also removed a bunch of materials in favor of the single paintable one, but this isn't something you'd really notice. Like batching it should theoretically improve performance, but realistically it probably won't make any difference. However, if batching is enabled it will further reduce the number of batches as each material needs its own batch.

Here's a crappy screenshot of the tunnel table. Of course as I was getting ready to release the update, I discovered that the incline wasn't actually shallow enough and the longest BART cars got stuck entering the tunnels.

Logged
Selkcip
Level 1
*



View Profile
« Reply #225 on: December 03, 2016, 02:11:08 AM »

I keep telling myself that I'm going to release a small update and then I end up adding one more thing that means waiting until the next day. Case in point:



I'll talk more about the update once I release it.
Logged
FluffyJenkins
Level 0
***



View Profile
« Reply #226 on: December 04, 2016, 06:18:59 AM »

Oh yeah, I forgot to reply...

KABOOM

...
Logged
Selkcip
Level 1
*



View Profile
« Reply #227 on: December 04, 2016, 09:51:01 PM »

I wasn't originally planning on releasing another update so soon, but in adding support for decoupling cars I realized that I had broken braking/speed syncing for the older cars. The upside is I released these new shunters sooner than later:


I also added controls for the aforementioned decoupling that let you decouple the first and last car in a train:


I also changed the coupling behavior so that cars only couple when they are powered (on a rail) so that if a car derails it will decouple itself. This required tweaking how I determine if a car is powered and sets up the ability to make derailed cars/engines catch on fire or explode if they derail.

I had some more fun with explosive derailment:



Logged
CobaltHusky93
Level 0
***


View Profile
« Reply #228 on: December 06, 2016, 04:41:55 PM »

The explosions and new engines look great!

Just got back from vacation, can't wait to do another update video next week sometime.
Logged
Excy
Level 2
**



View Profile
« Reply #229 on: December 07, 2016, 04:20:23 AM »

Hey man, been a while since I visited this devlog but as promised, I now have a Vive and I tested it out. Thoroughly enjoyed what I played and I really look forward to further updates.

My feedback:

The movement method of dragging the room made me nauseous very fast. I don't know if this is just me or because I'm just coming back to the Vive after a year. I very much prefer teleporting, maybe a choice?

A snapping feature for piece to piece would be really nice instead of having to place them almost perfectly, also if pieces would snap to the table surface. I also couldn't manage to place a level table, couldn't tell if it was leaning or not.

I'd only read the earlier posts and seen those images so when I got in game, the dog scared the fuck out of me. It's just sat there, staring.. planning. The music was a little unsettling rather than peaceful, but maybe that's because I was playing at 3am. I think people are much more weary of their surroundings in VR.

All in all, I still enjoyed a good few hours on it, absolutely love the art style and just messing around with it.
Logged

Selkcip
Level 1
*



View Profile
« Reply #230 on: December 08, 2016, 12:53:53 AM »

Hey man, been a while since I visited this devlog but as promised, I now have a Vive and I tested it out. Thoroughly enjoyed what I played and I really look forward to further updates.

Welcome back, I'm glad you enjoyed it!

My feedback:

The movement method of dragging the room made me nauseous very fast. I don't know if this is just me or because I'm just coming back to the Vive after a year. I very much prefer teleporting, maybe a choice?


I think there's enough existing code that finally getting around to adding a teleport option shouldn't take too long.


A snapping feature for piece to piece would be really nice instead of having to place them almost perfectly, also if pieces would snap to the table surface. I also couldn't manage to place a level table, couldn't tell if it was leaning or not.


For the most part you should be able to just drop pieces into place. As it is if a piece touches a snapped piece it should snap as well. However, they don't necessarily snap to match the orientation of other pieces.


I'd only read the earlier posts and seen those images so when I got in game, the dog scared the fuck out of me. It's just sat there, staring.. planning. The music was a little unsettling rather than peaceful, but maybe that's because I was playing at 3am. I think people are much more weary of their surroundings in VR.


I plan on making the dog walk around and pick things up, but it's less important so I haven't gotten around to it yet.
I'm probably going to replace the music for the next update. Maybe I'll finally introduce the boombox.


All in all, I still enjoyed a good few hours on it, absolutely love the art style and just messing around with it.

 Hand Thumbs Up Right
Logged
Excy
Level 2
**



View Profile
« Reply #231 on: December 08, 2016, 02:54:03 AM »


For the most part you should be able to just drop pieces into place. As it is if a piece touches a snapped piece it should snap as well. However, they don't necessarily snap to match the orientation of other pieces.


I plan on making the dog walk around and pick things up, but it's less important so I haven't gotten around to it yet.
I'm probably going to replace the music for the next update. Maybe I'll finally introduce the boombox.


Ah yeah I remember, they wouldn't snap correctly, was always like 45 degrees off? Maybe I was placing wrong haha.

Aaahh, if the dog moved around and picked stuff up, that'd be a great change.

Awesome stuff man.
Logged

Selkcip
Level 1
*



View Profile
« Reply #232 on: December 08, 2016, 02:58:38 AM »

Ah yeah I remember, they wouldn't snap correctly, was always like 45 degrees off? Maybe I was placing wrong haha.

It sounds like you might have been trying to place diagonal pieces. They are rotated at 45*, but it isn't obvious until you place them and they refuse to snap straight. I don't like them, but they were an easy to added solution to the diagonals-are-longer problem at the time.
Logged
Excy
Level 2
**



View Profile
« Reply #233 on: December 08, 2016, 03:30:07 AM »

Ah yeah I remember, they wouldn't snap correctly, was always like 45 degrees off? Maybe I was placing wrong haha.

It sounds like you might have been trying to place diagonal pieces. They are rotated at 45*, but it isn't obvious until you place them and they refuse to snap straight. I don't like them, but they were an easy to added solution to the diagonals-are-longer problem at the time.

Aaahhhh, that makes sense now you say that Smiley Probably my fault for not reading/realising but I assume many other players would just do as I did, it'd be nice to just get slapping pieces down right away and everything make sense as you interact but that's UX design which would probably come a lot later in development.
Logged

Selkcip
Level 1
*



View Profile
« Reply #234 on: December 15, 2016, 09:51:05 AM »



Logged
Selkcip
Level 1
*



View Profile
« Reply #235 on: December 15, 2016, 03:35:50 PM »

I released a winter update today. Here's the full changelog.

In short:
  • New winter scenery
  • Holiday props/scenery
  • Engines can catch fire/explode if they crash going fast enough
  • Lots of stuff can catch fire
  • You can put fire out with the extinguisher
  • Cars will decouple when they derail
  • Added rolling noises
  • You can teleport by pointing an clicking the grip button, which is awkward, but will have to do for now
  • I added an adaptive res dial labeled "Super Sampling" which sets the lowest resolution scale the game can adapt to. Cranking it up all the way sets it to 2X (pretty damn crisp)
  • Added a boombox with some tapes to choose from to replace the old music

I think that's the best stuff.

In other news, I found out that Locomancer was featured in an Australian gaming magazine a while ago and reached out to the editor to get a copy. He was nice enough to send a second one when the first one was swallowed by the mail void. It just arrived and it's pretty awesome to hold a magazine with my game in it:




I've been awake for a while so I might be forgetting something. < After typing that I switched tabs and forgot to post this for 5 or so minutes...
Logged
CobaltHusky93
Level 0
***


View Profile
« Reply #236 on: December 16, 2016, 02:39:11 PM »

Wow! All this stuff is absolutely fantastic!

Getting in a magazine and the Festive Holiday's update is astounding. I can't wait to get my voice back so I can make a video about all of the new things that have been put into the game.
Logged
Selkcip
Level 1
*



View Profile
« Reply #237 on: December 16, 2016, 02:52:24 PM »

Wow! All this stuff is absolutely fantastic!

Getting in a magazine and the Festive Holiday's update is astounding. I can't wait to get my voice back so I can make a video about all of the new things that have been put into the game.

Happy to hear that!
Logged
jctwood
Level 10
*****



View Profile WWW
« Reply #238 on: December 16, 2016, 03:20:36 PM »

Woah that is a seriously beautiful two page spread! I've loved following the development of the game and look forward to seeing it gain more traction.
Logged

Selkcip
Level 1
*



View Profile
« Reply #239 on: December 16, 2016, 03:26:25 PM »

Woah that is a seriously beautiful two page spread! I've loved following the development of the game and look forward to seeing it gain more traction.

Right? Batman only got one page. It's just too bad it was published before I put up screenshots of the paint/mining town updates.
Logged
Pages: 1 ... 10 11 [12] 13 14 ... 18
Print
Jump to:  

Theme orange-lt created by panic