Samuel Lundsten Profile
Samuel Lundsten

@SamuelLundsten

4,353
Followers
107
Following
24
Media
97
Statuses

Technical Artist. Lecturer at Luleå University Of Technology.

Joined November 2021
Don't wanna be here? Send us removal request.
Pinned Tweet
@SamuelLundsten
Samuel Lundsten
1 year
Slowing down the execution time and popping the hood
30
272
3K
@SamuelLundsten
Samuel Lundsten
1 year
Working on a procedural map generator. I really want to click on these icons.
20
339
4K
@SamuelLundsten
Samuel Lundsten
1 year
"A few tiles later".. rewrote the WFC algorithm, so now it has a good navigability heuristic and some other neat stuff. Maybe the next @BadNorthGame should take place in the forest, like this?
28
158
3K
@SamuelLundsten
Samuel Lundsten
2 months
Swapped the placeholder characters with some lively small fellas. Helped make the pacing more apparent.
37
118
2K
@SamuelLundsten
Samuel Lundsten
3 months
Ported my map generator to Godot aswell. Decided to try it out in 3D.
17
95
2K
@SamuelLundsten
Samuel Lundsten
1 year
My process of adding new tiles. Trying out some vertical navigability.
9
126
2K
@SamuelLundsten
Samuel Lundsten
4 months
Migrated most of my things to Godot. Exciting to finally test out some potential gameplay.
26
78
1K
@SamuelLundsten
Samuel Lundsten
1 year
Now the levels are seeded and can be accessed trough the generated map. Also been thinking about different system for adding assets and components post-wfc.. hence the sheep!
12
63
1K
@SamuelLundsten
Samuel Lundsten
5 months
Tried porting the generator to Godot. No fancy tiles nor collapse heuristic, but a navigability flood-fill, placing trees at unreachable tiles.
10
75
856
@SamuelLundsten
Samuel Lundsten
3 months
Same squad joystick control setup, testing out group center + joystick axis to direct attacks.
14
53
816
@SamuelLundsten
Samuel Lundsten
3 months
Trying to figure out vertical traversal for joystick-based agent steering.
13
49
797
@SamuelLundsten
Samuel Lundsten
1 year
Trying out various shapes of procedurally GPU instanced foliage on the WFC.
10
33
701
@SamuelLundsten
Samuel Lundsten
9 months
Using the sheep as moral support while testing out Godot 🐑
13
38
540
@SamuelLundsten
Samuel Lundsten
1 year
Trying out a village tileset. It takes some time to add new pieces to the puzzle, but it is very rewarding.
10
22
533
@SamuelLundsten
Samuel Lundsten
3 months
A trick i often find myself using in stylized context is fading objects into the background color. Basically crossfading from shaded to emissive without shading and towards the background color.
5
42
483
@SamuelLundsten
Samuel Lundsten
4 months
My humble approach to adjusting tile border mesh normals. Kind of a smoothing groups approach, without merging meshes.
6
31
442
@SamuelLundsten
Samuel Lundsten
2 years
Marching Cubes with multiple tilesets & Y-based rule for selection. Learning some algorithms and tried to imitate @OskSta BrickBlock.
8
24
393
@SamuelLundsten
Samuel Lundsten
1 year
Having fun exploring and blocking in characters that could work in my procedural environment.
9
7
210
@SamuelLundsten
Samuel Lundsten
8 months
Playtesting multiplayer mechanics by myself.. I am struggling to hold two joysticks.
2
9
182
@SamuelLundsten
Samuel Lundsten
1 year
Testing out some turn-based mechanics playing against myself local pvp.
4
8
130
@SamuelLundsten
Samuel Lundsten
2 years
5 tiles are needed to create this procedural forest level with model synthesis. Will add more tiles to get some verticality, but it is nice to just run around. #screenshotsaturday #wfc #ProceduralArt #technicalart
4
6
94
@SamuelLundsten
Samuel Lundsten
2 years
Nothing beats the feeling of when an algorithm works as it should. ("Sort of") @OskSta #wfc #ProceduralArt
0
2
90
@SamuelLundsten
Samuel Lundsten
6 months
Last couple of years have been a journey from art into design and programming. We'll see what 2024 will bring.
0
0
44
@SamuelLundsten
Samuel Lundsten
3 months
@OskSta I do almost everything in C# This generator was a quick port because it was close to pure C#. I only do editor scripts in gdscript so thst I do not have to compile.
1
0
24
@SamuelLundsten
Samuel Lundsten
2 years
And in the spirit of @OskSta , lets have a Demo!
3
1
14
@SamuelLundsten
Samuel Lundsten
4 months
@OskSta I like it. Feature-wise above my expectations, but there are many UX and performance issues that need to be addressed, which I guess is to be expected.
2
0
9
@SamuelLundsten
Samuel Lundsten
1 year
@psergiomr Indeed. Based on the points, i render pixels to a low-res texture that i boxfilter. Then i use this texture/mask to control particle emission.
1
0
9
@SamuelLundsten
Samuel Lundsten
5 months
@boris_brave I'm not completely sure how you mean, But I do need a few. This is the tile-set I created for this test.
Tweet media one
1
0
8
@SamuelLundsten
Samuel Lundsten
3 months
@NBegemota The agents themselves only check groundcontact. The navmesh for the stairs is smooth so there is no problem there. But I do multiple raycasts for the agents target/goal to determine valid points along the input direction.
0
0
6
@SamuelLundsten
Samuel Lundsten
10 months
@unity Nope. This is it. I am not going to choose Unity again for coming projects, regardless if this gets rolled back.
0
0
7
@SamuelLundsten
Samuel Lundsten
4 months
@GameDevsGuild I switched from Unity. I wasn't stuck with anything, so I decided to jump ship.
2
0
6
@SamuelLundsten
Samuel Lundsten
4 months
@matthias_code Squinting at the specs and thinking.. "Might be sorted when I'm releasing" ... I hope haha
0
0
4
@SamuelLundsten
Samuel Lundsten
1 year
@noio_games @boris_brave @OskSta Yep! In simple terms. I'm still fiddling with it, but you can also use the "exit" profiles for weighting too, and carve a tunnle using in/out profiles, and then collapse the rest. The only complexity could be interconnectivity of navigability in the same tile.
1
0
5
@SamuelLundsten
Samuel Lundsten
1 year
@SPGoosfraba Radial scattering, noise, some nudging, scale constraints multiplies connection distance constraints, line intersection and some more stuff.
0
1
5
@SamuelLundsten
Samuel Lundsten
1 year
@GlovesAndHands I wrote it this week. I have not named it yet 😅
1
0
3
@SamuelLundsten
Samuel Lundsten
4 months
@cucadev Actually a lot of simple shading trickery. VertexColor or Height is used to fade colors to give variation, both for shading and fade-out. I fade out the trees and ground by interpolating albedo towards black and emissive towards backgroud color. Otherwise i have dynamic lighting.
1
0
4
@SamuelLundsten
Samuel Lundsten
1 year
@OskSta Thank you! Right now it is mesh, mainly due to quick look-dev. I am aiming to optimize it a bit, but I like the look.
0
0
4
@SamuelLundsten
Samuel Lundsten
1 year
@hippowombat Thank you! Yes, currently exploring some mechanics for a game in this setting. We'll see!
0
0
4
@SamuelLundsten
Samuel Lundsten
1 year
@0x21376B00 Yes, navigable heuristic. And it preferres expanding navigable surfaces first with some specific constraints.
0
0
4
@SamuelLundsten
Samuel Lundsten
2 years
@StevenJWBrooks @OskSta I think @OskSta explained it very well in the old "Vertex 3". It is basically bitmasking with marching cubes and dual-grids. I only allow tile placements on top and no caves are allowed. And I rotate Y-axis and mirror tiles which gives quite few variations instead of 256.
1
0
3
@SamuelLundsten
Samuel Lundsten
1 year
@OskSta @BadNorthGame Great point! I love forest setting though. Would be so cool with some enemies being stealthy and popping out of the bushes 😄
2
0
3
@SamuelLundsten
Samuel Lundsten
1 year
@noio_games I saw @boris_brave mentioning it. But I analyzed @OskSta talks and derived a method. Basically material naming convention yields pre-processed navigable profiles which are preferred when selecting tiles if navigable bounds can be expanded.
1
0
3
@SamuelLundsten
Samuel Lundsten
1 year
@CodeRed_dev Yep, using WFC.
0
0
3
@SamuelLundsten
Samuel Lundsten
1 year
@into_madness_ Thanks! Yes i do. Previous post shows that one, and it works in 3D as well. The success rate is not 100% and is a bit based on the tileset and constraints.
0
0
3
@SamuelLundsten
Samuel Lundsten
9 months
@Just_Game_Dev At the moment it is a co-op between me and the sheep, fighting Godot 😄
1
0
3
@SamuelLundsten
Samuel Lundsten
4 months
@john_clayjohn @OskSta I would say the UX is mainly about QA and number of devs, which is naturally an issue for Godot. An example on performance, is that i do alot of mesh manipulation, and it is expensive to fetch meshes, manipulate and assign. I had to write my own cache.
1
0
3
@SamuelLundsten
Samuel Lundsten
1 year
@noio_games @boris_brave @OskSta It only expands outwards from the initial collapse, and only bounds expansion triggers that weighting now, but i also have other adjustable constraints.Such as only build connections towards the navigable graph so I do not get island's that are unreachable (even if not navigable)
0
0
3
@SamuelLundsten
Samuel Lundsten
9 months
@OskSta Thank you! Some happy accidents were made 😄
0
0
1
@SamuelLundsten
Samuel Lundsten
4 months
@perkele1989 Yes, but the tiles are independent meshes all the time.
0
0
0
@SamuelLundsten
Samuel Lundsten
2 months
@Icehelmet Cool! Looks like the comet imagery from rosetta
1
0
2
@SamuelLundsten
Samuel Lundsten
4 months
@Berny_TheOven Yeah. Unity is a great game engine, but the general direction it is heading just feels wrong in my gut.
0
0
2
@SamuelLundsten
Samuel Lundsten
5 months
@germanunkol It is the numbers of potential tiles left at that point, represented as normalized scale on a sphere.
1
0
2
@SamuelLundsten
Samuel Lundsten
1 year
@Cyanilux Thanks! 😀
0
0
2
@SamuelLundsten
Samuel Lundsten
1 year
@anastasiaopara Thank you! Some of your creations is on my reference board 🤌
1
0
2
@SamuelLundsten
Samuel Lundsten
2 years
@Just_Game_Dev @OskSta I can see that I have some of your images in my reference folder for 3D tiles! 🤌
1
0
2
@SamuelLundsten
Samuel Lundsten
1 year
@boris_brave @BadNorthGame Currently it is using similar/same method as Bad North's navigable bounds expansion. But im working on expanding it to use navigable "exit" vectors from to direct tunneling towards goals. We'll see if it pans out 😄
0
0
2
@SamuelLundsten
Samuel Lundsten
1 year
@CuriousDynamics I wrote it in Unity from scratch.
1
0
2
@SamuelLundsten
Samuel Lundsten
3 months
@Igotlazyagain Thank you! Yes there is some avoidance nudge, and also multiple raycasts that validates the path, so if the main-path is to short they will not engage and bundle up into a ball.
0
0
2
@SamuelLundsten
Samuel Lundsten
4 months
@OskSta I have not ventured into that area in Godot yet. I might be in for a surprise.
0
0
2
@SamuelLundsten
Samuel Lundsten
1 year
@Just_Game_Dev It is not too complex using marching-cubes with bitmasking though. But I was thinking that the sheer number of tile-sets would be a lot. That was why I was thinking about it 😄
1
0
1
@SamuelLundsten
Samuel Lundsten
9 months
@tayete I am using Godot's NavAgents with rigidbodies. That already gives some smooth interaction. On top of that I am basically doing raycasts with various configurations.
0
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@Just_Game_Dev I'm a bit curious. Is this this marching-cubes with different tile-sets? And that their bit-mask is constrained per tileset?
1
0
1
@SamuelLundsten
Samuel Lundsten
3 months
@AppleSeedGames Yeah I need to properly test it. This is the first iteration.
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@Just_Game_Dev Brush? Continous flow?
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@Cyanilux Looks really good!
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@mCampomar This does not use dual grid. I guess it would be useful for combining with MC. The colors are a debugging guide for navigability heuristic when collapsing. In the end i validate all navigable tiles.
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@deulamco @BadNorthGame I would say no in regards to the foliage. These are just initial tests with unoptimized meshes and shaders. But I am pushing for a bit higher visual fidelity than Bad North.
1
0
1
@SamuelLundsten
Samuel Lundsten
2 years
0
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@TransientCode Beautiful work!
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@guachinango_ Not yet! Still testing different core mechanics to establish what the game will be.
0
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@Cabezotta Thanks! Haha 😄
0
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@mCampomar @BadNorthGame Depth and normal based outlines. Big values so that it will catch too much details.
0
0
1
@SamuelLundsten
Samuel Lundsten
3 months
@AppleSeedGames You hold a button to increase distance, which also decreases the accuracy. I thought i might use joystick magnitude, but this is more multiplatform support.
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@CuriousDynamics Yeah i intend to have a bunch of custom data so I wrote it all, but it is not that complex yet.
1
0
1
@SamuelLundsten
Samuel Lundsten
3 months
@ImAndreSilva They stop moving towards a target when the button is released, so they won't crowd. Also, I do multiple raycasts to determine valid points to walk towards the input direction + adjust with avoidance vectors, so if valid, they get a point further away, spreading them more.
0
0
1
@SamuelLundsten
Samuel Lundsten
3 months
@ByteArcane The only post effect is the DOF. The rest are shaders.
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@Silk_Flame Haha I implemented a simple generic messaging system and just wanted to test it out.. on something.. 😄
0
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@samuelthomson With WFC there is a challenge to with tile border normals(many permutations).I have seen different approaches, but I wrote a script to process the normals based on overlapping vertices. I group them based on angles to then avarage them and reassign them, without combining meshes.
1
0
1
@SamuelLundsten
Samuel Lundsten
1 year
@touzimsky This looks soo cozy. I love the style.
0
0
1