• Content count

  • Joined

  • Last visited

Community Reputation

168 Neutral

About rvkennedy

  • Rank
  1. [quote name='Assassinbeast' timestamp='1350295454' post='4990327'] I just want to know if it is kinda possible to become a professional gamedeveloper learning at home. Im currently learning win32 in c++ from Michael Morrisons book "Beginning Game Programmng" and i aim to learn directx afterwards. There are many good books out there that teaches directx.. so i kinda think its possible to become a professional without a school, but im not that sure. [/quote] Yes you can. But do it like this: make the [i]smallest game[/i] you possibly can. Don't make an MMO, make a little platformer or strategy game, or recreate an arcade classic. I strongly advise making a mobile game, because the distribution channels are already in place. If you make a game for Windows, you'll have a hard time getting on Steam or Origin, or even MS' new Windows 8 store, which will have low user numbers early on. Use the following tools: For STEAM: C++, Visual Studio, DirectX For Android: Java, Eclipse, OpenGL For iOS: Objective C, XCode, OpenGL Make sprites with Gimp. Make 3D objects with Blender Then publish it. You are now a games developer.
  2. OpenGL DirectX 10 to DirectX11

    I would do it something like this - write your code for both, and use: [code]#ifdef DX10 #define ID3D1xDevice ID3D10Device #define ID3D1xDeviceContext ID3D10Device #define ID3D1xBuffer ID3D10Buffer ... #else #define ID3D1xDevice ID3D11Device #define ID3D1xDeviceContext ID3D11DeviceContext #define ID3D1xBuffer ID3D11Buffer ... #endif[/code]
  3. DXSDK_DIR can be set per-user. Instead of launching Visual Studio directly, you can launch it from a batch file which will read like: set INCLUDE=%DXSDK_DIR%\include;%INCLUDE% set LIB=%DXSDK_DIR%\lib\x86;%LIB% start "Visual Studio 2008" "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" /useenv Or you can have several batch files, each with their own definition of SXSDK_DIR, and then don't need multi-user setups.
  4. Unity Game Engines for Mac

    You've already got the best one! Is there something Unity is missing?
  5. Windows Installer is Terrible

    On a related note, if you select "Administrative Tools" from the Windows 7 control panel, it takes you to a folder full of shortcuts to what look like the tools from Windows 95. Wherever MS is expending their considerable energies, it's not this kind of basic infrastructure.
  6. It is not late to start programming?

    Yes, it is way too late, it's like twenty past nine! You can start learning to program at any age, the only requirement is that you enjoy it.
  7. Trying to make a 64bit app

    Quote:Original post by Icebone1000 But since Im just using win32(windows.h) shouldnt visual studio does the includes by itself without my concern? I installed the windows sdk and visual studio 2008, always with the 64bit stuff(like headers and libraries)..It is suppose to set automatically those things isnt it? It really kind of should, but it doesn't. What you can do is set up a batch script, which will set up Visual Studio for 64-bit building. In the instance you launch you won't be able to build 32-bit programs, but 64-bit will work without needing to change your whole Visual Studio setup. This a batch file that works for VS2005, 2008 should just need the directory changing. Save it as "RunVCx64.bat" or somesuch: set MASM_32_OR_64=ml64.exe set VSDIR="%PROGRAM_FILES32%\Microsoft Visual Studio 8" call "%VSDIR%\VC\vcvarsall.bat" x86_amd64 start "VS2005" "%VSDIR%\Common7\IDE\devenv.exe" /useenv The vcvarsall.bat changes the right settings depending on the argument you send it. The MASM setting is needed if you have any assembler in there - you'll need to change custom build options if you use this.
  8. DirectX 9 and August 2009 DirectX SDK

    First check - in Visual Studio 2008, under Tools->Settings->Projects and Solutions->VC++ Directories, do your include and library directories show up?
  9. Which languages would benefit me the most?

    For any kind of scientist or engineer, MATLAB is awesome, become a guru on that and you can't go far wrong.
  10. World, View and Proj matrices can be identity; Then x and y are pixel sizes - on PC, Xbox may vary.
  11. Unity Reflection and Introspection

    Well, how impossible it is depends on your platform. Our system uses a combination of the existing RTTI infrastructure, and the metadata generated in the export list of a Windows executable or dll. So you don't need to template things or override new etc - just declare the class as an export. It works with release builds, without relying on the pdb's. It will work on instantiated templates, as long as the instances are exported. Interestingly, export lists can be built for exe's just as for dll's. I'd imagine something similar exists on most platforms, though I wouldn't like to estimate how long it would take to reproduce the Windows functionality - it's taken about four years to get this far. Anyway, it sounds like there's probably enough interest to merit a release in some form. But I'd still be interested in hearing ideas for syntax and feature-set. Katie - with regard to accessing data-member names for XML, this is not something I've done so far, as I tend to make them private, and use accessors. Built into the metaclass is a property list, which is constructed by interpreting any Get/Set pair with the correct return values and inputs as being a "Property". Then the XML interpreter stores or restores these properties. Perhaps if you're using public member variables for C-style structs it would be good to have the option of using those directly - I can look into that.
  12. Unity Reflection and Introspection

    Lots of interesting replies! I should perhaps have explained - I looked at the template/macro libraries early-on, but wanted to avoid something that forced any change in the class definition, or made me double-up definitions by defining something once in the main class declaration and again in a macro. As for using the wrong language - well, I posted this in General Programming because it is general. But I write software for games - on the higher end of the hardware scale: PC, X360, PS3. And C++ is the standard there for a number of reasons. If I create a class to go in a game, I would want to write the editor in the same language, so I can re-use the class. Building tools in a different language from your engine leads to a world of pain, and as a middleware provider, I work in the language my customers use. I perhaps should have explained as well that this isn´t a hypothetical proposal - this system already works. My question is whether I should release it for wider use or not - along with a bit of polish on the syntax and feature set. Re. Telastyn - why would you spend your time learning how something works that you don´t want?
  13. Hello there, I'm curious about the level of interest in reflection/introspection for C++. What I'm talking about is a system that can take an arbitrary class - without special macros, templates, or base classes, and extract metadata - class names, function names, and so on. Then you can call the functions. An example would be an XML streaming system that can look for property get/set functions in a class, or public member variables, and save-off the instance's data or load it at a later time. Or a property sheet that can take an arbitrary class instance pointer, and look for get/set functions, so as to make a class's data editable. It's the sort of thing that you might use to make tools - level editors and so on. For example, calling a function might look like this: MetaClassInstance c=reflection::MakeClassInstance(instance_ptr); MetaFunction f=c->GetFunction("GetSize"); float size=f(); In this case, a MetaClassInstance contains a pointer to an instance, and automatic meta-data saying what kind of class it points to. A MetaFunction contains the instance pointer, and a reference to the function we asked for - if it exists. Then we call the overloaded () operator of MetaFunction, and this invokes the function, which obviously knows what class instance it refers to. So we could just say: float f=MakeClassInstance(instance_ptr).GetFunction("GetSize")(); - although, obviously we want exceptions or some kind of error output if the class has no function GetSize(), or it takes one or more arguments, or doesn't return something that converts to float. Would this kind of system be worthwhile to the community? Would you use it, or roll your own? Have you already rolled your own, and if so, how did you get on? And for this kind of system what would be a good syntax for the meta functions?
  14. Does Android support C++?

    OpenGL, yes. C++ - not whole programs but you will be able to write libraries in C or C++ soon.
  15. Normal Vector from a Height Map

    Consider four adjacent values in a square, where value 2 is to the right of 1, 4 is above 1 in the y direction, and 3 is diagonally opposite 1. So the heightmap values are h1,h2, etc. The cross product of the vectors from 1 to 2 and from 1 to 4 gives the normal, it's (h1-h2,h1-h4,1). You then normalize this vector. Value 3 can be ignored.