Reputation: 17 Tradesman
- Active Posts:
- 42 (0.06 per day)
- 19-June 12
- Profile Views:
- Last Active:
- Today, 02:48 PM
- OS Preference:
- Favorite Browser:
- Favorite Processor:
- Who Cares
- Favorite Gaming Platform:
- Your Car:
- Who Cares
- Dream Kudos:
Today, 10:45 AM
03 Mar 2014 - 10:06
03 Mar 2014 - 03:29
01 Mar 2014 - 21:22
06 Jan 2014 - 11:03
22 Jan 2013 - 00:32
21 Jan 2013 - 11:18
24 Oct 2012 - 13:30
20 Oct 2012 - 05:55
11 Sep 2012 - 13:56
Posts I've Made
Posted 18 Apr 2014But, then i'll have an ItemSystem to handle all of the item logic in the game. ( Picking up, putting down, using, etc ). So, if it wasn't clear, ( which is always possible with the way stuff pours out of my mind! ), i'm looking for advice for storing the class objects that HOLD the entity ID. Basically the object the entity represents. So, would it be more common to see that list of ten items held in one single list in Item System, or would it be more common to see those items held by their actual owners, like the Player's Inventory, Game World, etc.
I see, in that case I misunderstood your question a little. I think I understand a little better now...
I would say that it depends purely on the usage that you need from the "items". For example, if the ItemSystem needs to do something for which it needs every single item (e.g. loop through and update them or something) then the ItemSystem would need to store the list. If not, and the only thing that ever uses the items is their actual owners (e.g. Inventory, GameWorld, based on your examples) then only the actual owners need to store them.
Posted 18 Apr 2014This is really something quite dependant on the rest of your architecture and usage.
For example, if you never need to access only friendly NPCs, why would you bother to store them separately?
There's no one best way to do this.
One approach would be to store all entities in one container of entities, which makes entity messaging simpler as you don't have to find which container the entity belongs in every time you need to find it.
Then, if you need to store a certain type of entity separately, store a list of UIDs that can be used to access those entities from the global list. The reason to store UIDs rather than pointers is so you're safe if the entity gets removed.
Also, you didn't mention hash maps at all, so I thought I would add that you almost definitely want to be using a hash map to store your entities, mapped by their UIDs.
Posted 13 Apr 2014After reading BBeck's post, it occurred to me that I wrote mine with the assumption that you specifically wanted to choose between DirectX and OpenGL. If not, then do consider something that's more beginner friendly instead (such as XNA as BBeck mentioned)
Also, if you are completely new to OpenGL or DirectX, I would like to add an additional point to my recommendation of DirectX 10 - that the difference between D3D10 and D3D11 is fairly small, so I don't believe it will do you any harm to learn D3D10 first, with the help of the extra libs, and move to D3D11 quickly afterwards if you want to avoid being "behind".
Posted 13 Apr 2014You may find your help here, but I don't think it's very likely.
You may be better of with a Minecraft/Forge/MCP specific forum.
This seems to be an incredibly common issue, according to Google.
I'll give some links to help, but again, I don't think this is really the right place.
Posted 11 Apr 2014Your best option is to simply learn one of them comfortably, then experiment with it and learn more about the graphics pipeline in general. Even if there were more jobs available using DirectX 10 or OpenGL 4 or whatever, that's only going to change eventually when those technologies change - so try not to limit yourself to only being useful with a single tool.
That way you can learn the other a lot more easily if/when you need to, because you know exactly what you need achieve and how things work.
In my personal opinion, DirectX (specifically D3D10) is a little easier to learn from scratch, because you don't have the fuss of deciding which other libraries to use with it, which often stumps people with OpenGL, and hinders them from learning which bits OpenGL is actually doing, and which bits the other library is doing.
I specifically mention DirectX 10, because it still has a lot of the extra little functionality (the D3DX library stuff mostly) that is since deprecated in D3D11, for simple things like loading images and compiling shaders from files, and also because the .fx framework is a little easier for beginners and requires less effort to "architect" on the C++ side. You can still use most of these things with DirectX 11, but they come separate in various forms (such as the Effects11 library which you can now build yourself).
Also, a the DirectX sample browser has lots of nice samples of full projects that you can use to learn. The GPU Gems books are pretty good for graphics too, and the samples in those use DirectX.
- Member Title:
- New D.I.C Head
- 21 years old
- October 14, 1992
- Full Name:
- Years Programming:
- Programming Languages:
- Website URL: