Jump to content


Member Since 08 Apr 2013
Offline Last Active Oct 29 2015 08:38 PM

#5224621 Learning Graphics Development

Posted by BKrenz on 20 April 2015 - 10:29 PM


I would definitely recommend jumping into the current API's and more specifically OpenGL due to it's cross-platform nature.


I generally don't like it when people give this advice. Yes, OpenGL is cross-platform, but anyone who has any experience with cross-platform (or even cross-vendor!) OpenGL development knows how much of a pain it is to get consistent results across platforms and hardware. I'd choose DirectX over OpenGL any time just to avoid the extension and driver compatibility hell.



I actually ended up going with DIrectX, via SharpDX. I'm not concerned with actual development at this point in time, and this is more of a side project type of thing than an actual career decision. 

#5224384 Learning Graphics Development

Posted by BKrenz on 19 April 2015 - 06:11 PM

Alright, thank you!

#5224371 Learning Graphics Development

Posted by BKrenz on 19 April 2015 - 04:42 PM

Hello all!


I'm a somewhat capable programmer in general, currently taking some time off school for personal reasons. In the meantime, I've been reading books on more generalized software development concepts, and working on a few tiny projects for various things. While I'd have loved to get an internship in the industry, my current situation prevents that.


I've been interested in games for a while, and am interested in different aspects of developing them. Most recently, I've been wanting to dive into the world of graphics, and have done a minimal amount of research so far. I have one major concern before I start learning, and it's related to the new Vulkan and DX12 APIs. I've noted from various sources that the way of doing things is going to be changing, and that, at least for Vulkan, it should be public by the end of 2015.


My concern is that I would start diving into one of the APIs that are out now, DX11 or OGL4+, and would be harmed by learning about how things are currently accomplished. 


Doing the math isn't a concern on my end, I'm fairly familiar with a lot of calculus, algebra, and geometry. From my understanding, matrices, and to a lesser extent, quaternions, are a major staple of 3D graphics.


My question is this: In order to ensure that I'm learning the more "correct" way of doing things, where should I be starting? Is just getting in and doing something in the current APIs the best way to go? I'm not sure where to start. Conceptually, I would think that many things will carry over well (VBOs, etc). However, implementations, and architectures, seem like they'll be changing drastically. 


Please do note that I'm wanting to learn how to develop directly in the APIs, and not wanting to learn about different engine's ways of handling it or anything like that. 

#5078497 Death and Mining in a 2D Top Down RPG

Posted by BKrenz on 17 July 2013 - 11:59 AM

There was a similar discussion about death recently, you can read some of the replies for death in that thread.


Thanks for the link.


My personal favorites is what Servant said, or alternatively, having an inheritance system (most recently implemented in Rogue Legacy) - where your character really 'dies', but you continue to play with a descendant of your character. 
The descendant system also gives opportunity to make death be an actual threat without having a total wipe. For example, one way to implement it is to have everything your character carries drop to the ground, while stuff in a bank or house storage or anything similar, stays the same. This way once you get some good minerals/ores from mining deep in a cave, you have to escape alive in order to bring them back, or you'll need to go retrieve them with your next character.


That's a rather good idea, which gave way to another idea I had. Depending on how a certain system comes to fruition in another part of the game, I could have an actual family system where at any one time, you can take a family member and be them (only the adults), and be able to specialize their skills somewhat. A party system, where you can actively control a single person, and if they die, it's permanent. Thoughts? Or do I need to be more clear?



As for mining, I've never been a fan of straight up nodes, nor am I a fan of regenerating ores. In your cave, you could have 'rocky' tiles that can be mined for a chance to obtain ores. Doesn't mean that each tile will yield an ore, while some may strike rich, and give you a few at the same time. And as you said, the deeper you go into a cave,  the chance of getting better ores increases. If you can create fairly large caves, you'll never have to regenerate the ore randomly. To decrease travel time, you can add 'checkpoints' to the caves, so that once you reach a certain point, you can then go to and from the cave entrance straight to that point in the cave (sort of like "I've gotten here before, I'm know my character can make it there without trouble" thing). In a way simulating a mining tunnel system, since most serious mining in a realistic environment happens in deeper caves/holes.


I like the idea of not having actual ore nodes. And my main focus was getting rid of regenerating ores. So, essentially I can have all the rocks in the cave be a mining node, with a chance of getting an ore. Possibly a result of higher mining is the ability to prospect. Interesting...


My idea was to split the caves into "levels" where once you complete a level, you don't HAVE to go back through it. Essentially, you enter the cave, and walk through the exit of the first level into the second level. This now allows you to exit from the second level straight to the surface, or walk back through any levels you've already completed. I was thinking having each level be deeper and larger/more difficult. 

#5078371 Death and Mining in a 2D Top Down RPG

Posted by BKrenz on 16 July 2013 - 10:20 PM

Another option for death is that you never really "die". Instead, when close to death, you fall unconscious. When you come-to, you find bandits have stripped all your gear. Maybe you awake in a villager's house, who found you and tended you back to health.
For ore, one possibility is letting players mine almost anywhere where rock is exposed, whether it's marked as a good mining location or not. As the player mines, his character gets worn out, so the longer he mines the less he finds until he goes and rests.
Further, different spots are better, and have different resources and higher chances of finding ore. But as players gather to those locations to mine, the mine slowly gets depleted, forcing the player to move to new locations.
However, the mining spots gradually regenerate over long periods of time so the player can eventually revisit it for more resources.



I've thought about that with death, but I feel that doesn't fit so well when you're exceedingly deep in a cave, for one example.


The problem with the mining idea you have is that it's a top-down 2D game, and I was planning on only simulating varying heights on the map (think Pokemon?), and allowing only a small amount of terrain adjustment in the overworld. Creating caves that had to be entered like a dungeon was an easy way in my opinion to overcome that, though I'm not sure how the rest of the gaming world feels about that.


Please note that when I said Instancing earlier, I really meant creating a cave entrance that would lead to a certain generated cave. This would allow the player to enter a separate dimension almost that the cave resides in entirely. Again, think Pokemon.

#5078364 Death and Mining in a 2D Top Down RPG

Posted by BKrenz on 16 July 2013 - 09:53 PM

EDIT: Accidentally posted in Technical GD instead of Creative GD section. Please move.


Hello all!



I'm trying to find a rather realistic approach to death in my game. The idea was to have no magic, which eliminated resurrection in the classical sense. It's more medieval, so no respawning in a laboratory.


The only idea I can come up with in that regard is having the player respawn in a holy place (church, graveyard, etc) by the gods' will. I want the punishment of death to be the loss of all items on the player.


On to the mining aspect.


I've been attempting to devise a method of mining for the game I'm working on. Mining is a rather integral part of the skill system (and hence the economy system), though I'm unable to figure out a proper way to handle it.


My original thoughts were possibly something akin to Runescape, with specific mining nodes and areas. However, I don't want the ore to be easy to get in large quantities. My second idea was akin to WoW's method, where nodes are generated in the world, and respawn every once in a while. However, that too gives the player the ability to grind out large quantities of ore.


Then the idea of having pockets of ore available to mine that were sparse popped up. However, this would require the player to move further and further out into the world as time progressed, which could be an issue.


The idea I'm currently working with is instancing (?) of caves, where the cave entrance is generated naturally (low chance, obviously) and the player has to enter these areas. These caves would hold the pockets of ore above, and be (nearly) endless. However, the further in the player went, the better chance of better ores, but also the more dangerous the caves can become (due to enemies, cave-ins, etc).

#5060465 tictac toe marks

Posted by BKrenz on 08 May 2013 - 08:54 PM

With my latest game plans in the planning stage, I find myself adding onto the game design document slowly. While sitting here, I have notecards and a pen beside me where I can write a note on, then add it to a pile based on whether its a gameplay feature or a technical implementation detail. Obviously, the features pile grows faster, but it still helps me keep thoughts together. I just figured out that a linked list may be the best way to handle a specific data set in my game. Written down and added to the technical implementation pile.


If it's something that will take more than a week to program, it's worth spending at least a few weeks gathering ideas, writing them down, figuring out some implementation details, and researching what you don't know. Keeping notes is great.