Jump to content

  • Log In with Google      Sign In   
  • Create Account


Inuyashakagome16

Member Since 13 Sep 2005
Offline Last Active Feb 18 2014 09:38 AM
-----

#5046405 Completly new

Posted by Inuyashakagome16 on 24 March 2013 - 08:44 PM

 

Get yourself a good IDE/compiler, c++ book and add several c++ reference sites to your bookmarks.  Learn c++ before trying to learn 3d.  You will be making console applications for quite some time.

 

Some examples

IDE ( free, windows only ) Microsoft Visual Studio 2012 express for windows desktop ( ships with microsoft compiler )

IDE ( free, cross platform ) QtCreator ( ships with mingw compiler on windows )

Book The C++ Standard Library: A Tutorial and Reference (2nd Edition)

Reference www.cppreference.com  www.msdn.com www.cplusplus.com

 

Eventually when you get good at programming you'll want to get a book on a graphics API, you have 2 choices for low level api on windows, openGL or DirectX.  OpenGL runs everywhere 3d graphics is needed, and directx is windows only.  Other platforms only use openGL.

 

good book on openGL

OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition)

 

good book on directx

Introduction to 3D Game Programming with DirectX 11 ( Frank Luna )

 

All the above books can be found on amazon.

Also XNA is a good library to use. DX and OpenGL aren't.. really beginner friendly.

He says he want's to know c++.  So no xna.

 

True. I just wasn't sure if learning C++ as a first language would be.. good. I'm not saying he should but rather suggesting that it might be better to start else where. But you're links for OpenGL and DX are very reliable (as a side note) thanks!




#5046353 Completly new

Posted by Inuyashakagome16 on 24 March 2013 - 04:44 PM

Get yourself a good IDE/compiler, c++ book and add several c++ reference sites to your bookmarks.  Learn c++ before trying to learn 3d.  You will be making console applications for quite some time.

 

Some examples

IDE ( free, windows only ) Microsoft Visual Studio 2012 express for windows desktop ( ships with microsoft compiler )

IDE ( free, cross platform ) QtCreator ( ships with mingw compiler on windows )

Book The C++ Standard Library: A Tutorial and Reference (2nd Edition)

Reference www.cppreference.com  www.msdn.com www.cplusplus.com

 

Eventually when you get good at programming you'll want to get a book on a graphics API, you have 2 choices for low level api on windows, openGL or DirectX.  OpenGL runs everywhere 3d graphics is needed, and directx is windows only.  Other platforms only use openGL.

 

good book on openGL

OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition)

 

good book on directx

Introduction to 3D Game Programming with DirectX 11 ( Frank Luna )

 

All the above books can be found on amazon.

Also XNA is a good library to use. DX and OpenGL aren't.. really beginner friendly.




#5046342 Completly new

Posted by Inuyashakagome16 on 24 March 2013 - 04:06 PM

For Video tutorials I would check out Oyyou on youtube. 

And another awesome series (text based) is Rb Whitaker

 

You'll want to learn C# which RB Whitaker's site also has some C# tutorials: http://rbwhitaker.wikidot.com/c-sharp-tutorials

 

Good luck!




#5036567 Any point Learning XNA?

Posted by Inuyashakagome16 on 25 February 2013 - 08:49 PM

It is true that they are cutting support soon for XNA. However, monogame is an alternative! and it's multiplatform! It's still in C# as well. I'm using monogame currently to relearn some XNA now and it's great. 




#5036330 Detect single mouseclick - move sprite

Posted by Inuyashakagome16 on 25 February 2013 - 08:06 AM

Yeah that's the issue. I can't figure out how to do this. Should be simple though. The tutorial you linked to Inu, is almost the same as the one i used.

But that gives me errors.

Here's the code:

private MouseState oldState;
            MouseState newState = Mouse.GetState();

            if (newState.LeftButton == ButtonState.Pressed && oldState.LeftButton == ButtonState.Released)
            {
                // do something here
            }

            oldState = newState; // this reassigns the old state so that it is ready for next time

 

 

And the errors are:

Invalid expression term 'private'

and:

; expected, on the same line

 

Go down to the bottom of the page and click "show source code" that will show you where the "private MouseState oldState;" should be. :P It should be up with your spritebatch variable just inside of the class, not inside of any methods. (Initialize, Update, Draw, etc)




#5036308 Literature, motivation, how-to-do-it-right on C#/XNA?

Posted by Inuyashakagome16 on 25 February 2013 - 06:44 AM

I would check out http://rbwhitaker.wikidot.com/xna-tutorials for a tutorial set.

 

and 

http://shop.oreilly.com/product/0636920013709.do

 

http://www.amazon.com/XNA-4-0-Game-Development-Example/dp/1849690669

 

for books. As mollekake said, check out monogame It's an awesome library that's pretty much XNA with most of its classes so far. It's still in development but many games have been released using monogame. (check the site for more on that) I'm currently going through monogame learning it and it's great. it's pretty much XNA honestly. 




#5027205 I dont know were to start AT ALL

Posted by Inuyashakagome16 on 30 January 2013 - 10:18 AM

I would start from square one.

Learning Programming: Start with something simple and easy to understand. Just like any normal speaking language it's probably best to start with something easy.

 

I suggest Python to start. Or possibly C#. I find Python very easy / close to English so that's probably you're best bet. I say C# because of XNA. It hasn't been updated in a while but it's still a decent area to learn to understand some of the basics of game development. 

 

XNA is considered a game engine so you would start there.

 

Just remember, and never forget, your first game WILL NOT BE AAA. Also start small. :) Pong, Tetris, the list goes on. Just something simple. 




#5024687 I came across a site with eBooks....

Posted by Inuyashakagome16 on 23 January 2013 - 06:21 AM

Pretty sure you shouldn't be posting that link in this forum Benderwiz. Considering its a "ebook download" site where you aren't paying for any of the books. 




#5023898 How to create c# text based game like this

Posted by Inuyashakagome16 on 21 January 2013 - 08:25 AM

while(isDead != true)
{
    //intro and selection options
    //.....

    if(input == 2)
    {
        isDead = true;
    }
    //continue on
}

 

? Something like that possibly. Pretty much when you choose "Survive in wilderness" the bool variable "isDead" is set to true which then pushes you out of the while loop. "While(isDead != true" 

 

 

(my apologizes if some of this syntax is incorrect, i've been using C++ for a while so my C# is rusty)




#5023695 Version control for begginers

Posted by Inuyashakagome16 on 20 January 2013 - 06:32 PM

I won't try to repeat a lot of what's been said, but some reasons I like git is that:
  • No need for a server/internet connection; you can commit, do diffs, or view the log all on your local system
  • You can push the same repository and updates to several locations (so I can push my code to my home server, where it gets backed up on the cloud; also I can push to Github or Google Code, or my school team's repo on the school computers, etc)
  • I can pull from several locations (I've got the same repositories on my Windows and OS X partitions, and when I switch OSs/partitions I can just pull updates from the local file path (OS X can't write to the Windows partition, and the Windows partition can't write to the OS X partition, which is why I have to do this and why this feature is so nice to me))

 

I don't do a ton with git; I'm no ninja when it comes to version control. However, the idea that you can push and pull updates to and from anywhere is so nice with git (and other distributed version controls systems, but I've only used git). With centralized version control systems (a la SVN), you've got one place you push and pull your updates to and from, which means I can't push/pull to/from different partitions or other computers like I can with git.

 

That's my reasoning for using GIT honestly. I use it on my lunch at work to push and pull changes and then at home and it's great. You COULD do that with SVN but it would have to be through your router at home. 




#5023597 Version control for begginers

Posted by Inuyashakagome16 on 20 January 2013 - 01:54 PM

You don't need to setup a new server on your computer to run a local subversion repository. You can just create a database on your hard disk. It works pretty much the same as using a server but instead of doing svn co svn://blah.blah.blah/blah/blah you use svn co file://blah/blah/blah/blah.

I personally prefer using git for single developer work even on Windows, though to be honest I don't really notice any difference in workflow between SVN and git in that situation. Since I already use cygwin, installing it is as painless as selecting the package in the cygwin installer.

 

Hmm. I suppose I was just worried about losing data honestly. Hence why I went with an online repository. I have yet to REALLY look at SVN but I've always heard it great. However, while looking up "Git VS Svn" there were a few articles about pros and cons (http://blog.teamtreehouse.com/why-you-should-switch-from-subversion-to-git)




#5023586 Version control for begginers

Posted by Inuyashakagome16 on 20 January 2013 - 01:17 PM

+1 for Git. The nice thing about Git too is that you can keep a local repository if you don't want/can't get an online one. If you want to learn more about Git, Scott Chacon created an online version of his book, Pro Git, which is free to view. Of course if you feel like you're getting a lot out of it, you're encouraged to purchase his book to support his hard work. smile.png I also like to use Git Extensions with Visual Studio because it provides a nice little interface for handling my repos, rather than doing everything via the command line. There are a ton of other GUI's for Git out there too if you want to check out some other ones. Some of them are listed here. Good luck!

^ thanks for explaining a bit more about Git. :P I use Git Extensions all the time and its amazing compared to the normal Git Gui application.

 

 

This is almost a bit like "which language is better, C++ or Java", tell me which one to use.   :-)

 

In the end, the "correct" answer is probably use whichever has the best integration (in your file manager and/or your IDE). Everything else really doesn't matter all that much, because most revision control systems (with the exception of RCS which is a nightmare!) do more or less exactly the same thing for most people.

 

Assuming you use Windows, like most people, Subversion is probably a good choice, in particular TortoiseSVN. It doesn't cost anything, it does the job, and it comes as a double-click-to-install package that adds a context menu to Windows Explorer. It's totally foolproof. You can get free hosting on the internet everywhere, and you can run it locally on your filesystem or on your NAT. What more do you need?

 

Git is a good alternative if you need a distributed version control system (But, do you really need this? To me, this is rather a serious disadvantage, and the "one big advantage" of having the entire repo at hand is nothing that filesystem-local Subversion doesn't do, too). Git is great if you develop under Linux, it installs in 3 seconds and works without problems. Under Windows, it's a different story. I've found getting Git to work rather painful, and it didn't do anything that Subversion didn't do in the end (and contrary to common propaganda, it wasn't any faster). Git is great if you have 1500 developers. Do you have that many?

So you would suggest SVN over Git if you were a single developer / only a few working on a project? I've personally only used Git for personal applications. Where as the company I work at uses SVN / TFS for everything. It seemed like SVN would be better for a work environment. Also, (not sure of my info here just warning) if I'm not mistaken isn't SVN suppose to be setup like a server on a computer / on a server? I use Bitbucket because I'm able to code and push changes at work (on my break) and at home whenever. Where as SVN would be a server at home. (it probably would be possibly too access the info from work with some port forwarding) 

 

Just a few inquiries. :) I never see threads like this so it's great to finally see one!




#5023566 Version control for begginers

Posted by Inuyashakagome16 on 20 January 2013 - 12:34 PM

I personally use Git for my personal projects. (C++ with DirectX) and it works fine! I have a repo through bitbucket.org Whether Git is the easiest way to go or not I'm not sure. For me it wasn't hard to setup but I've read up on how to start. (Which bitbucket has a tutorial section on how to setup a repo and your Git client) The only thing about Git and really many other version control systems is the ignore file. I didn't know what this was till recently. Pretty much the Git system has a file named ".gitignore" which you put file extensions that you don't want git to include when pushing changes. (Like special files for Visual Studio that are specific for that system in case you're going between multiple computers coding)

 

http://www.vogella.com/articles/Git/article.html < Very decent tutorial for Git. 

 

I've heard good things about Merc but never tried it personally, and same goes for SVN. 




#5017109 Advice regarding language choice - 2D Top Down Strategy

Posted by Inuyashakagome16 on 03 January 2013 - 08:30 AM

C++ wouldn't be a bad language to start with. As long as you understand that, you won't understand most of the different functions and sides of C++ overnight. It takes a while to fully understand what C++ has to offer. (Same with any other language) You could try to learn some C++ and see how it feels and if you understand what you're doing. If so, then continue on learning different sections of C++, and slowly move into a graphics library of some kind. (/game engine)

 

As many have said before, "Don't expect to make the greatest game ever at first. Start small with games like pong, matching games, and other small games."

I'll add to that with "and make sure you comment your code and UNDERSTAND what each keyword means / does." 

 

I'm sure the community here will be of great help in the future to you if you ever need it. :)

 

 

Also, this thread will just turn into a "this language is better than this language" very soon I feel.




#5010676 Does it get easier to remember everything DirectX?

Posted by Inuyashakagome16 on 14 December 2012 - 11:48 AM

Don't learn an API by trying to cram everything, you don't have to be able to recite every function and every class available, that's just madness. Also, don't worry about using the 'correct book', or the 'correct tutorial', because these should only be reference materials and not absolute guides to learning and understanding an API. Learn by doing. Read up on some tutorials and try to recreate what they achieve by yourself, while keeping an API reference close so you can look up which parts of the API you should use and how they should be used. When you use these parts of the API a couple of times you'll have no problem remembering what they do and how they should be used, maybe you won't know the exact details of which parameters a certain function expects, but that's absolutely no problem as that's what those books and online references are for. If you're serious about programming you'll encounter tons of APIs in your career, and there's no way you're going to be able to remember or learn every single detail of each API you're ever going to work with, so get comfortable with using the available documentation as reference material.



I'll probably try and go with that. Because I just don't want to write a bunch of code and not really understand what's going on. Considering DirectX is rather complex.



Whenever you 'feel' like this, just remember back to the first time you programmed or your first experience with OOP and all the things that were confusion, overtime things made sense and you understood stuff, the same will happen with DirectX, however do note the learning curve with any lower level library is steep but once you have gotten use to it, it can become a lot of fun and you will accept the challenges with more confidence. That book is ok for beginners I guess, but from personal experience anything with a skull hand at the front is terrible, and I am pretty sure that book doesnt cover major areas that probably should be covered in a beginners book. Have a look at Introduction to DirectX11 - Frank Luna


I'll check that book out! And yeah that's true that's how it always was for me. It took time but i started to remember a lot about the syntax and meanings of everything.




PARTNERS