Sign in to follow this  

Organization

This topic is 3857 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey guys, I have a question about folder/directory organization. I just started downloading libraries but I can't help but feel unorganized about their locations. The DirectX SDK installer put it in its own location, Ogre3D put it in its own location, etc. But, do you guys have a single folder that holds all the libraries (like SDL and Allegro in the same folder)? Is it good to keep the folder (on XP) right on the C: directory (for example, C:\lib)? Also, where do you keep your projects? Do you keep all your projects in one folder even if you use different IDEs? I'm using Visual Studio 2005 right now so they're in my Documents folder. Is it good logic to keep that close by the libraries? But if I were to use Dev-C++, I should only access one folder where all my projects are, right? I understand that their location has nothing to do with computer efficiency, but how do you guys go about organizing your selfs when doing game development?

Share this post


Link to post
Share on other sites
For me, very few dependencies get installed in a global location. I generally install the DirectX SDK where it wants to go, and the Platform SDK where it wants to go. I install Boost in the same spot as both the previous SDKs (someplace in Program Files). Those are the only globally-installed 3rd party libraries on my development environment.

I have a Projects directory that contains a folder for every project I'm working on. These projects are usually under source control, so the typical directory structure look like:

Projects
ProjectName
branches
tags
trunk
ProjectName
ProjectName.sln Main solution file.
ProjectName.build MSBuild script for doing complete builds.
Artifact Skeleton of the "releasable" deployment.
Build Build tools (custom MSBuild targets, et cetera).
Dependancies Binaries for external libraries.
Documentation Source code for documentation.
Projects VS project files and source code.
Tests Unit testing projects.

Any external libraries that ProjectName depends on will be installed into the Dependancies folder. This only contains the released binaries for the dependency.

The purpose is so that I can have fine control over which version of a dependancy is used by a project, which can be very important. Additionally, this gives me the benefit of being able to include pretty much everything that the project requires to build in source control, which makes checking out a clean copy and building the project a snap for somebody else -- they don't have to fiddle with external dependency installation, making sure they have the right versions, et cetera.

The only things I am externally dependent on are the previously mentioned three libraries, and MSBuild itself (which is part of Visual Studio).

Share this post


Link to post
Share on other sites

This topic is 3857 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this