🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
[font="arial, verdana, tahoma, sans-serif"][size="2"]So this thing has got me hooked. I was just going to pop my head up, write a journal post or two about procedural generation, then disappear again, but I can't stop tinkering. Today, I got some minimal NPC AI going, just a shoe-horn of stuff I've…
The tinkering I've been doing the last couple days has really gotten me back in the mood. I took the demo I made in the last post and added in player logic, collision code, etc... and made it more game-like. The guy walks around, mountains block movement, and when he hits the shoreline he hops on a…
In the last entry, I showed how you can chain together various noise functions, combiner functions, masks and RGB operations to create a colorful over-map of a procedural island, showing mountains and forests and grasslands. The neat thing about the approach of building the chain from implicit frac…
In my last couple entries I was playing with Minecraft-style level generation, and in the process of those experiments I started work on a set of functions implemented in Lua that allows me to specify a table full of module declarations, and it parses that table into a connected tree of noise modul…
Here is a link to a ZIP of an experimental framework you can use, including the module tree declaration presented in the previous journal post, to play around with voxel field generation. Note that it is kind of hacked together; I'm an experimenter, not really a polisher, at this stage in my life.
Read more in /* Why you crying? */
Read more in /* Why you crying? */
EDIT2: Fixed. Thanks, Michael Tanczos.
EDIT: Forgive my dumbness, but anyone know how I can get the image attachments to actually appear in the body of the post?
Been awhile. I wanted to follow up on the previous post a little bit, but it's been busy lately; I've been to Mexico for a cruise, a…
Generating Worlds in a Minecraft-like Game
With the runaway success of the game Minecraft, I've been seeing a bit of a resurgence of interest lately in the idea of procedurally generated worlds. I haven't played Minecraft, but I must admit that, judging from the youtube videos I've watched, it seems…
With the runaway success of the game Minecraft, I've been seeing a bit of a resurgence of interest lately in the idea of procedurally generated worlds. I haven't played Minecraft, but I must admit that, judging from the youtube videos I've watched, it seems…
No, I'm not working on yet another Infiniminer/Minecraft clone. I haven't even played either game. However, I've been seeing a few posts lately about generating Minecraftian type levels, and it seems like the blocky, voxel-based worlds of this kind of game is ideal for experimenting with procedural…
No shinies or screenies today, although I have some stuff in the pipe I'd like to show in the next few days. But today and yesterday I did implement something neat that I've been meaning to do for awhile: "infinite" world streaming.
I've always liked the idea of Dwarf Fortress-y large worlds, genera…
I've always liked the idea of Dwarf Fortress-y large worlds, genera…
Here is a current in-game shot:
I've incorporated the texture "splatting" that I talked about a few posts ago, although I still need to hammer out the method for creating the art for coastlines and shorelines, since just doing an alpha blend onto the water of a flat splat kind of looks like crap. Th…
I've incorporated the texture "splatting" that I talked about a few posts ago, although I still need to hammer out the method for creating the art for coastlines and shorelines, since just doing an alpha blend onto the water of a flat splat kind of looks like crap. Th…
Awhile back, I mentioned a library I had found called Recast and Detour. I'd like to talk a little bit more about it.
The library is actually two libraries. Recast is the section that deals with generating a navigation mesh, and Detour is the section that deals with finding a path on a navmesh.
The w…
The library is actually two libraries. Recast is the section that deals with generating a navigation mesh, and Detour is the section that deals with finding a path on a navmesh.
The w…
I continue to find neat little goodies in the new (2.5) series of Blender. The latest tool I have found is a script for surface sketching in Blender. Basically, it is an experimental script add-on for Blender that enables you to use the grease pencil to draw lines in the 3D view, and convert those …
Been doing more fiddling and tweaking with Sculptris, and the character creation process. Revisited my turtle-shelled dude and made him a little more ferocious, with spikes and horns and all that jazz.
I've been working on a post regarding further refinement of the stuff presented in the most recent…
I've been working on a post regarding further refinement of the stuff presented in the most recent…
Continuing to learn, practice, and experiment. I often get the feeling I am going about things backward from the way "real" artists do them, but I suppose that's only natural.
The last couple of days, I've spent a bit of time playing Diablo 2 again. And by playing, of course, I mean "hopping from wa…
The last couple of days, I've spent a bit of time playing Diablo 2 again. And by playing, of course, I mean "hopping from wa…
Just can't seem to keep with a top down perspective. In the end, it's just too limited a perspective for my tastes.
Been playing around lately with stonework: pavings, walls, etc... for isometric. Stonework is one of those things that can be tricky to get right, but boring to play with. But it can s…
Been playing around lately with stonework: pavings, walls, etc... for isometric. Stonework is one of those things that can be tricky to get right, but boring to play with. But it can s…
Now that I've started tinkering with Archipelago again, it's a perfect time for me to experiment with a little idea I had some time ago, which I filed away. It has to do with eliminating, or at least hiding, the grid. Archipelago, like most of my games, is tile based. One of the biggest problems wi…
I've always loved 2D games. Although lately I've been tinkering with Ogre3D, I still (and probably always will) have it in my head that 2D games are what I really want to do. Simpler asset creation pipelines, lower GPU capabilities, less complex physics and object interactions, etc... For a solo gu…
I've been climbing back in the saddle, getting quite a bit done lately. In the process, I've added another neat, free library to my "standard" load-out of libraries: Recast and Detour for navigation-mesh generation and pathfinding. In a word: neat. It's a pretty powerful little library (Recast) for…
So, yeah, that neat little free program, Sculptris, that I raved about in my last couple journal entries? Turns out, it's been bought by ZBrush, along with the developer. I'm all for people getting jobs and/or getting paid for their work, I really am. However, the whole reason I was so excited abou…
So I decided to take the time to flesh my little test dude out a bit more. I kinda like him now. I could see myself actually using him in a game. Here is a render from Blender of him; the one in the background is the high-res version sculpted and painted in Sculptris (about 120k triangles) and the …
I'm not really a character artist, or any other kind of artist, for that matter. Sure, back in the day, I used to dabble a bit in painting, pastels, colored pencils, etc... but ask me to draw a picture of your dog now and I'll just stare blankly at you. I've done graphics for all of my video game p…
Wang Tiles!
Sounds kinda dirty, I know, but according to Wikipedia, Wang tiles are sets of tiles that can be used to seamlessly tile a plane, while reducing the visual artifacts of repetition. By constructing a set of Wang tiles, you can piece together arbitrarily large regions of texture using the …
Sounds kinda dirty, I know, but according to Wikipedia, Wang tiles are sets of tiles that can be used to seamlessly tile a plane, while reducing the visual artifacts of repetition. By constructing a set of Wang tiles, you can piece together arbitrarily large regions of texture using the …
In light of the last post about seamless mappings of noise functions, I've begun yet another re-vamp of the noise library aspect of the Accidental Engine.
The new reorganization formalizes a few conventions that have slowly evolved as I've used the thing over the last couple years. I've imposed a fe…
The new reorganization formalizes a few conventions that have slowly evolved as I've used the thing over the last couple years. I've imposed a fe…
I've been playing with various types of noise generation for quite awhile, and I use generated noise as an integral part of many of my various workflows: texture creation, level creation, etc... It's great stuff. But there has been something that has bugged me for awhile now, and that is the algori…
Okay, okay, this technique isn't 100% procedural (although, with the use of a software renderer or raytracer it could be). However, it does make heavy use of procedural techniques, so in my opinion it does qualify as "programmer art". As always, we'll be using the good ol' trusty Accidental Noise L…
Jay Barnson talks about a concept he refers to as a "Black Triangle": that stage in a game development cycle when you have accomplished a milestone of sorts that on the surface doesn't look like much, but which, underneath, represents a significant step towards making real progress. The "black tria…
Like a lot of people who "grew up" with C++, I read a lot of books that taught you to program along the lines: "Circle is-a shape, which is-a Renderable which is-a BaseObject", and the whole idea of object-composition never really clicked on me. I've worked on a lot of games. A lot, my friends. Hav…
Been away awhile.
Lately I've (yet again) started to get back into the swing of things. After a few days of munging through old code (old Golem stuff, the Accidental Library, etc...) I decided to take a different tack, and I downloaded the latest Ogre. I remember briefly trying to tinker with it onc…
Lately I've (yet again) started to get back into the swing of things. After a few days of munging through old code (old Golem stuff, the Accidental Library, etc...) I decided to take a different tack, and I downloaded the latest Ogre. I remember briefly trying to tinker with it onc…
Advertisement
Popular Blogs
Advertisement