Been wanting to develop games for fun for a while now. What programming language (if any) should I learn beforehand? What engine should I use to develop them on? I don't want to make a 2D platformer or RPG maker game.
>>258921008
Ruby, Python, C, or Java. C++ is bloated to hell and you'd end up like an anon on the programming threads over at /g/ thinking he's stupid because in his 2 months of studying he barely scratched the surface.
>Can program
>Remember that I can't draw
>>258921482
Thanks. I was leaning towards C. As someone who never programmed before should I take a community college class for it or is it possible to learn in my spare time? Any idea how much I will use that language when using an already created engine like Unreal, source, unity, ect will be?
>>258921743
I'm friends with an artist and someone who can make music. If I know how to program I might be able to make some horrible indie game on greenlight and make money off of losers for 90% off.
>>258921008
If you want to make 2D games, you should probably learn RPG Maker, Game Maker,or Multimedia Fusion. C++ will take years to learn before you can make games with it. You can learn free engines in a matter of weeks/months.
lol just use java and create minecraft 2
I'm just about to go into a digital media course to learn shit then heading onto an actual vidya course. Good luck op. See you on the flipside.
>>258922913
This, just learn to art and you can do whatever with those engines.
>>258922913
I want to make basic 3D games. Some platformers and some doom clones. I always wanted someone to make a 3D 3rdperson shooter platformer as well so I might try that.
>>258921008
>What programming language (if any) should I learn beforehand?
Python is a great bigger language because it gets you thinking about how to program things without bogging you down with complicated syntax. After that C is a good choice since most engines accept C as a language or have a language based off it.
>What engine should I use to develop them on?
Really depends. Unity has a free version but there are others. Any one is fine really. If you're making something basic, the fine details between engines isn't important.
>>258921743
Pic related
>>258921893
>As someone who never programmed before should I take a community college class for it or is it possible to learn in my spare time?
Programming is easily learned by reading tutorials and books and playing around with the language. Some of the best programmers in the world learned from books.
>>258923215
bump
>>258923425
Fuck, forgot the pic.
>>258921008
if you're going for C++, consider looking into the Torque game engine, it's under an MIT license now so it's FREE
https://github.com/GarageGames/Torque3D
>>258921743
A guy on agdg comissioned a dude to do is art.
If you can't deal with mediocre artist failing simple
deadline think about spending money on that stuff.
>>258921008
>>258923215
Thirding this
>>258923442
That design looks cool but it is so impractical from a biological standpoint that it bothers me.
>>258923397
>always wanted someone to make a 3D 3rdperson shooter platformer as well so I might try that.
There are also a lot of free engines 3D out there. You can use the Half Life or Quake engines, Unity, Unreal, or something else.
>>258921482
>Recommends Python
>C++ is bloated
Clearly no idea what you're talking about.
>>258921482
>C++ is bloated to hell
what are you talking about. You have to link in like half a dozen libraries to do almost anything in it.
>>258924008
I think the idea was that programming something in Python takes less lines than it does in C++.
>>258923397
>Basic 3D games.
Always begin with 2D, 3D is more difficult to optimize
Especially if you're just starting prog.
>>258921008
If your only aim is to make video games, just use something like Game Maker (with GML), or Construct Classic, or Unity.
You have to have a legitimate interest in technology if you actually want to make a game from scratch using something like Monkey X or C++
>>258921482
>C++ is bloated to hell
>Ruby, Python, or Java
lmao
>>258921482
Remove Java and your suggestion is probably the best in this thread.
>>258921008
>moving off for uni next month to study games technology
anyone have some advice for me?
>>258925291
study programming/computer science in general or something; you're just limiting yourself if you choose games
plus I hear it's not a very useful degree
>>258924008
>>258924434
>>258925083
>>258925195
See all these conflicting opinions OP?
I put those suggestions there just to bait.
Use what you want if you feel you can handle it. Though it's a good thing to have multiple languages under your belt.
>>258923884
In what way?
There are many impractical seeming things (to us) that have valid biological reasons. You don't know the circumstances behind the evolution that would bring about that kind of animal. Maybe the gravity is significantly lower? Maybe there's swarms of creatures that fly only at that specific height at certain times of their day?
I-I just want to make fun roguelikes in my spare time
>>258925291
>to study games technology
>anyone have some advice for me?
Have you looked into the daily life and career of a game dev? It's pretty much being chained to a desk and forced to produce whatever bullshit your bosses are telling you to make and then being fired after completing it.
If you want to program as a career, take computer science and avoid video games.
>>258925291
Do Computer Science or Computer Engineering instead. Do the game stuff in your own time.
>>258925617
>See all these conflicting opinions OP?
Half of these "opinions" are just refuting the outright false statement that C++ is somehow more bloated than Java, Ruby, or Python.
OP, I don't give a fuck if you use Python, Ruby, or Java, but doing it because someone tells you that C++ is "more bloated" is fucking stupid. It's a lie, plain and simple.
>>258926282
I just want to know which one would translate best into making a game in a generic engine.
>>258926524
C and Java are very common. No matter what complaints people have with them, if you know how to program in one of them, programming in any other starts to feel very similar.
>>258926901
Not really.
OOP poisons the mind.
>>258926282
>Be a dumbass
>Someone on /g/ tells me to stop learning python because they said it was garbage
>Decide to move to Java
>Someone says it's garbage
>Move to C++
>Same as before
>Now on Ruby
Shit, at least I have an idea of the differences in the languages I guess. I'll stick with Ruby for now and jump back onto C++ later.
Here's a shitty calculator I made in C++
>>258926524
By simple virtue of being the more popular game programming language (and by virtue of the language allowing more control over minutiae like memory allocation), you're probably going to find more game programming libraries for C++ than any other language.
A close second, however, would be Java. Java isn't really suited toward big games, but if what you're looking to make is a simple 2D platformer or something similar then Java will suit you just fine, and it's quite a bit easier to learn than C++. I would personally recommend C++, but it can be intimidating to an early programmer and Java's not a terrible alternative.
>>258927171
>endl
Why.
>Want to make a game
>Try my hand at C++
>Takes me two days to even make the most simple comandline shit like a calculator
>Realize I'm not smart enough to grasp this stuff and make a game with it unless I spend years of my life learning it
>Quit and never try again
I wish I could learn to make games without having to spend years studying.
>>258927305
I'm sure you're smart enough to be a backalley slut though.
Go for it, anon.
>>258927305
You do realize being good at something takes time and dedication right?
>>258927242
Other anons recommended C. If say my first engine is unity would C be good enough?
>>258927302
I'm still learning man
What's wrong with endl?
>>258927171
My input would be "Fuck you OP" and it would crash your program.
>>258927305
If you can make a command-line calculator then you can make a text adventure, which is where you should be starting as an amateur game developer anyway.
C++ and java would be your best bets. Java is probably easier. I don't know much about Ruby, but python is easy, but more restrictive than aforementioned languages.
What do you guys feel about game makers and the likes
>>258921743
Well for your first game, you could use many of the assets available on the net. Look for sites that offer free spritework.
If after your first couple of games you decide to get serious, you can as that one guy suggested, commission an artist or just find a friend who can do the artwork for you.
>>258927802
what do you mean by good enough
as far as i know, with unity, all you need is a scripting language
>>258927305
I don't know if you have previous experience but oop is complicated and will require more than a few hours to master
>>258927846
Use '\n' instead.
If you think that does the same thing as endl, that's exactly the problem; endl also does other things.
Not your fault mind you, most tutorials for beginners will tell you to use endl.
>>258927846
I think that anon is thinking about using printf instead cout/endl. I use cout endl because I've been using it a lot of time but I think it's better printf, you can do more things with that and it's more flexible.
>>258927846
>What's wrong with endl?
Nothing, but I believe using "\n" produces the same result
Also I'm fairly certain you include the line:
using namespace std
Before the function to avoid having to always type "std::"
>>258928331
not op but , then it's better std::cout << "test\n" than std::cout << "test" << std::endl?
>>258928139
Good enough for most hobbyists and people who just aren't into spending months doing engine work.
>>258921008
Flash.
Just learn flash.
It's simple quick and is so ubiquitous that if you don't have a flash player on your pc you're pretty much cut off from 99% of all content on the web.
>>258925617
>conflicting opinions
None of these conflict with each other, we were all calling you out for not knowing anything about C++. You were probably thinking of C#, which is indeed a retarded, bloated language.
OP once you learn one language you've learned them all. Just buy/steal a textbook for any of them and sit down and go through the whole thing writing sample programs for every single thing you learn.
>>258927305
Thats like going to the rodeo and riding the biggest, meanest bull there your first time ever.
>>258927305
>years
Nigga get, "Beginning C++ Through Game Programming".
Nice book for learning the basics of C++ and having references that are not msdn.
>>258928740
std::endl isn't '\n'
it's '\n' followed by std::flush
>>258927305
>I wish I could learn to make games without having to spend years studying.
You don't have to.Learn a free engine.
See:>>258922913
>>258928740
www.cplusplus.com/reference/ostream/endl/
It says in the reference that endl creates a new line then "flushes" the stream. I'm guessing constantly calling it is not an optimal thing to do. Not exactly sure though. I'm not an expert.
>>258927171
>listening to what people tell you after starting by telling you X language is garbage
You'll never learn anything this way. About half of the posts doing this aren't even going to be from people that have programmed more than some hello world shit.
They just saw someone say once "EVERYTHING OTHER THAN C++ IS SHIT" so spout it to try and sound smart.
>>258929246
There's nothing wrong with calling it if you want to flush the output stream. However, you might not always want to do that. Sometimes you just want a newline character without outputting text.
>>258927901
This.
I just started learning C++ and after a while practicing if else statements and such, (after creating a calculator) I made a little tiny text adventure. It was short as fuck, but I was pretty damn excited to see it compile.
>>258927305
It just takes time, anon. Keep practicing, you'll never improve if you always expect to compile a code correctly on the first few tries. I thought the same when I just started, but I just decided to try again and again until I finally fixed my errors.
It's a pretty thrilling experience once you get something to work.
>>258927509
But how can I make a living out of that anon?
>>258927727
I have a lot of the former but none of the latter, though if I had any genuine talent that wouldn't be a problem.
>>258927901
Well by command line calculator I mean it can do addition, subtraction, multiplication and division, and that's all by using the built in functions. It's noting more than that.
Anyway I don't see how that would translate into a text adventure. Seems like it would take a lot of know how to get it to understand words without blowing up.
>>258928217
>oop
Huh?
>>258929053
Ill check that out anon though I don't know how much it will help, thanks anon.
>>258929241
Everyone seems to hate those ready made engine games though, and the games made on them are always criticized for the same sorts of flaws.
>>258925646
Also they're actually creative representations of sperm cells
>>258921008
In a perfect world, you should know more than just one programming language since different languages can offer different benefits. I know Java, Python and some C++. I wish I knew more. I'm best with Java and is my goto language if I want to code something up. I don't need to think of the syntax since I am so used to it, I just code it. I wish I could do that in other languages.
if you ONLY want to make games, look into something like Gamemaker or Unity. Learning a language and coding your game structure from scratch will waste a lot of time and effort if you're more of a design-oriented person and all you have interest in is creating games.
On the other hand, if you're also interested in computer science or software development as a whole, start learning a more proper language. It'll take longer to learn and longer to actually make games, but the experience will carry over into far more.
>>258929763
>Seems like it would take a lot of know how to get it to understand words
Being able to comprehend an actual sentence would be hard as fuck, and if you could do it you'd probably be working for Google. But what you can do is make a list of actions and a list of objects and have the playing input an action and an object.
>>258929763
>understand words without blowing up
Just parse the strings for the keywords that work nigga shit.
If the string doesn't match you just do a "that action is invalid"
>>258929763
>Seems like it would take a lot of know how to get it to understand words without blowing up.
You could create an entire, fleshed out text adventure with nothing but if/else statements and the barest knowledge of accepting text input.
The code would be bloated as fuck if you use nothing but if/else but it's entirely possible and conceptually very simple.
>>258929246
the problem isn't the call to flush as much as the fact that most C++ programmers will never learn it's happening because very few tutorials ever address it
most people are taught that endl is a platform independent '\n', i sure was and that was in a "reputable" university, which is none-sense since '\n' is already platform independent
>>258930234
>which is none-sense since '\n' is already platform independent
'\n' is platform-independent, but doesn't Windows, at the very least, also require a '\r' to actually get a new line?
>>258929763
oop = object oriented programming.
Download Unity and just start reading books and tutorials. Try to make something really simple. You can write your programs in either Javascript or C#, but I strongly suggest C# as it has external utilty to game making as well.
I made tetris in xna
>>258930392
'\n' (line feed) output to a text stream automatically inserts the '\r' (carriage return) in Windows. It won't for a binary stream, but you'll know when you're using one of those.
Similarly, reading a '\r\n' in a Windows text stream automatically converts it to a '\n'.
>tfw CC, C2, MMF
visual programming is the shit.
>>258930392
maybe it did at some point but when i was first learning c++ over four years ago '\n' was enough
>>258930234
>which is none-sense since '\n' is already platform independent
If you're writing to a file, DOS-like systems expect \r\n.
Which language would work best with unity? Which would work best for source and unreal?
>>258929763
Being a backalley slut is piecework, suck enough dicks and you'd be able to do just fine.
>>258930932
>Which language would work best with unity?
Unity accepts Java and C. Not sure the others, but you could google it.
Java is easier but if you're coming from c++ it's going to irk you how you don't have direct control over pointers.
>>258930932
It looks like Source is in C++, and Unreal is in C++ with an optional UnrealScript scripting language thrown in besides.
That was just a cursory Google search, though. If you're thinking about using either you might want to do some more research.
>>258931120
>Unity accepts Java and C
kek
>>258930638
xna is actually a good place to start. One step above the RPG maker and other game creators, but doesn't require a huge investment. And for all people bitch about Microsoft, if you use Windows getting set up from scratch is super easy.
Plus if you end up enjoying programming, C# and .NET are useful, and C# is syntactically similar to C, C++, and Java if you want to branch out.
I've been meaning to try to motivate myself to learn more C++. I found a good guide. Shits just intimidating to get into.
>>258931554
Sorry. C#, Javascript, and whatever the hell boo is.
>>258929763
>Everyone seems to hate those ready made engine games though, and the games made on them are always criticized for the same sorts of flaws.
Not really. I've played a bunch of fun ones. You can't have it both ways.
>>258921482
Why would you use Ruby for games?
>>258923609
Notch can draw better than me.
>>258929763
>Everyone seems to hate those ready made engine games though, and the games made on them are always criticized for the same sorts of flaws.
/v/ does this. Especially freshman CS kids on /v/.
Nobody cares what the fuck you use to make a game if it's fun.
Just like make game man.
>>258929731
I suppose, I just don't think I have a good grasp of the material, always had to flip back and forth in the tutorial to get things to work.
>>258930178
>>258930202
>>258930217
Oh I see what you are saying, that makes sense.
>>258930430
Oh, sorry I am not familiar with the terms as I should probably be.
And thanks for the advice, I will look into unity.
>>258931059
That's good, I guess I have a back up plan now.
>>258931945
I'm sure you know better than me anon, I'm just saying what I myself often see said around here.
>>258921743
As long as you're not planning on selling your game stealing assets is always a good option.
>>258932294
Well
Game engines are pretty popular for run off the mill eroge. They can look professional but at the end of the day I don't think you can land a job with only knowing game maker shit.
>>258931604
Yeah I'd recommend it to anyone in here that is beyond the "Hello World" stage of programming.
I don't have much experience, mostly university related stuff and that was mostly in C and some Java, but I was able to work out the Tetris game over a weekend or so without any guides.
It's pretty easy to learn and you still feel like you're doing more than drag/drop pieces to make the game.
I really like properties too, it just feels a lot cleaner than Get/Set everywhere in Java.
What do you people use to program in C++?
>>258933130
>without any guides
Should say without any guides on making Tetris.
Of course I had to use references when first learning C# and the XNA stuff.
>>258933224
NetBeans if you hate microsoft and Visual Studio if you don't care.
>>258921482
>2014
>make game in C
>2014
>use C
>>258933224
CodeBlocks
>>258933224
QtCreator nigga. A friend of mine has family working for a big robotics company and they use it for making all their testing programs (although not actually for the robots code)
>>258930784
"\n" is a platform-independent line-ending according to the C standard.
If the system needs a \r\n (or, in the case of older macintosh machines, \n\r) for a line ending, the C standard library is required to make this conversion from a regular "\n" (except for binary streams, where things are input and output literally).
In fact, on a Windows machine, outputting "\r\n" to a text stream will usually actually output "\r\r\n".
If I were to make a VN with sprites and an isometric view for traveling and interacting with everything, which language should I start learning?
>>258921008
Since you don't want to make the easy stuff go straight to an engine like Unity or UE.
You need a lot of in depth knowledge to make anything close to being decent. To know how to use a language properly to develop something massive you also need to know how the hardware works.
>>258933714
C is still extraordinarily useful.
As a career C++ programmer, I've got to agree that making games in C is retarded, but if you want anything embedded, a kernel module, or pretty much anything that needs performance and doesn't benefit from OOP, C is the ideal.
Use the best tool for the job. There's a reason almost every OS kernel is written in C.
>>258933224
Vim.
>>258925761
If that's all you want to do, game maker or similar is all you need.
>>258921008
Use this OP.
http://lazyfoo.net/tutorials/SDL/index.php
>>258934163
>tfw not enough of a 1337 hacker to use vim and gdb and all the other unfriendly shit
I'm sorry
>>258934078
So a frank adventure sort of game? Doesn't really matter, I would probably go for java if I hadn't done any earlier programming.
>>258933224
pico
>>258934078
If you just want to make that one game ever, then none.
Something like that could easily be done in a game maker for much less trouble with nearly no hit to quality.
>>258934078
You could just use RPG Maker for that probably.
>>258921008
Start with C to understand how to deal with data types more eficiently, then proceed to C# with Monogame to start scripting for unity, C++ is excellent if you want to create engines (something you won't do untill you're more comfortable with programming), so C for your first exposure, then scripting with C# for unity and if you wan't to really get into it, try C++ after you're used to scripting.
>>258921008
>. What programming language (if any) should I learn beforehand?
If you just want to make a game, learn to use Unity or even GameMaker, which is significantly easier.
C++ is neat, but it's not for small, indie games, and for fast prototyping of ideas. You need to really know what the fuck you are doing. I've been programming in C++ for about 10 years now and I wouldn't use it to make a game, unless it's something I know I can't do with a ready-built engine.
Also, keep in mind just learning C++ means nothing, because you also need to learn how to implement 3rd party libraries for sound, graphics, etc. Proprietary engines do that for you, which saves a lot of trouble. Moreover, they will be far more optimized than anything you can output in the same timeframe.
In short, fuck programming languages and just use an engine. Anybody suggesting otherwise is a complete fool that has never done anything other than spout buzzwords on 4chan.
>>258933224
VS 2013 and Visual Assist (+ some other minor add-ins)
Did the guy who made the Retard Rain game (the game the guy from AGDG made) do all the art, music, and programming?
Is knowing java or any other language required if I want to make something in unity?
javascript on code acadamy and unity, if you actually want to make games
C++ if you want to spend years doing nothing
>>258933574
>>258933775
>>258933824
>>258934163
>>258934514
>>258934658
So many different answers, what are anybodies experience with any of those?
>>258934658
This, it has a friendly UI and many features i just can't live without anymore.I used to program with code blocks and dev c++, it was terrible
>>258925771
>>258925954
>computer science
DO NOT DO THIS. CS teaches programming but they're mostly focused on COMPUTATION AKA MATH.
If you want to learn to PROGRAM then take software engineering.
>>258934412
Vim is very friendly when you get used to it. When you're a proper vimmer, using anything that requires a mouse is awkward as fuck. Having to press the arrow keys 40 times to get past 5 words in a sentence is pain as opposed to typing "5w".
gdb isn't really "unfriendly" as it is just low-level. It's intended to be used in a terminal without necessary access to a text editor. It excels at what it's meant to do. You can use it as a primary debugger, as many do (including me), but I don't fault anybody for wanting a more tied-in debugger/IDE system (you can even use GDB for this, as many IDEs do).
>>258935013
Visual Studio is in my opinion a lot easier to use for beginners.
>>258933224
I've been using Visual Studio since version 6.0 and currently using VS2012, it's fantastic and despite some minor (but irritatingly frequent) bugs, there isn't anything better out there.
If you want something more lightweight (for instance, for a weak laptop), you can also use Bloodshed's DevC++, but it's bare bones and doesn't have equally good compilers.
>>258935002
>javascript lecturing other languages
there's a reason 99% of javascript libraries are made to make you write in everything except javascript
>>258935013
Code blocks is terrible, and so is Dev C++
Never had any experience with netbeans but that's what my father uses to program his stuff.
What i currently use is VS Express 2013, wich i adore, but there are some other alternatives such as Eclipse, tho i've never had any experience with it
>>258935136
>CS teaches programming but they're mostly focused on COMPUTATION AKA MATH.
>300k starting
>>258931269
>pointers
You haven't seen anything until you've seen pointers to pointers to pointers.
Some people are paid by the asterisk, I fucking swear.
>>258935275
Visual Studio is what every single company uses, including CD Projekt RED and all the other companies making fuck-huge games from scratch.
Source: I applied for CDPR and they asked if I have VS experience.
>>258921008
/v/, how would I go about making something akin to Thief and Dishonored with an art style that can last forever like Wind Waker or shit
i make small games, i usually put them on mobile but occasionally the PC too. i'd post them here but they have my name on them.
if you're going to be a solo dev and you can't draw, you better have money or seriously reconsider the types of games you will be making. it's simply not possible to make those massive indie projects you see on kickstarter all the time by yourself, no you will not make shovel knight. often times artists have a better time being solo devs because there are tools like game maker and unity, if you're a programmer you are stuck with either paying or using programmer art.
don't be a nodev, stay away from /agdg/ since only a handful of the regulars there actually make games
>>258935136
>implying that you shouldn't know both
Get out of my sight, pleb.
Then again, UK and USA universities don't even teach anything other than the bare minimum to get you a job.
>>258935434
>pointers
You mean like this?
>try to learn to program
>take python codeacademy course
>get to the part where I have to remember why something is str() and something is len.[insert something here]
>what the fuck is going on
>realize I'm too stupid to program
>copy paste this in every programming thread I see
>>258934634
>In short, fuck programming languages and just use an engine.
So I wouldn't need to learn an engine for making something quick in Unity or unreal?
Is AGDG good? Should I go over there and ask for some advice? Not op, but somebody interested in making games.
>>258935660
The world would be a better place if everyone were suddenly a mathematician. However people have priorities and would rather learn the minimum necessary to create a game or application rather than learn math in general.
>>258935013
Professional programmer here.
NetBeans is fine for Java, garbage for much else.
Eclipse is the same, but with more idiots actually using it for C++.
CodeBlocks is alright, but a bit bloated and slow.
QtCreator is snappy, lightweight, flexible, and fast. It also has a Vim mode.
Vim/Emacs is awesome if you're willing to learn an editor and manage your own plugins.
Pico is a joke, like Nano.
Visual Studio is fine if you're willing to use proprietary shit (my Unix friends would crucify me if they heard me say this) and don't need proper GCC support. I'd stay away unless you're intentionally only targeting Windows.
>>258935372
>300k starting
Where did you find a job with 300k starting? I'm a computer scientist and I'm struggling to find anything above 40k. You are just a retard saying nonsense, arent you?
>>258935660
In the US employers are barred from using aptitude AKA IQ tests to screen applicants because it's raycis, so they use the next best thing which is college degrees.
>>258935562
If /v/ knew this stuff most of us would be millionaires, but if i undestand correctly you mean cell shading, i haven't had any experience with it
>>258935013
Start with a simple text editor to learn programming.
User an IDE like VS later for convenience.
>>258935665
Assuming you were serious.
>>258921482
>ruby, python C or java
what the fuck, do you know why minecraft is a piece of shit, right? Modern games are made in C++ because you can do a shit ton of proper low optimizations, I wonder if you have ever programmed ever
/v/... I want to make games...
I'm taking a semester of math and computer science. Am I on the right track?
>>258935798
>Pico
I used to use this because Unix and I didn't have anything else to use. Do people actually say it's any good for programming? It's as good as using fucking notepad.
>>258935136
>Muh math
I'm not good at math yet am still pursuing a STEM degree.
Math is important even if you suck at it.
>>258935667
lookup str(): "Returns a string version of an object"
lookup len.: "Return the length (the number of items) of an object."
>>258935972
>Start with a simple text editor to learn programming.
That's a horrible idea.
If anything, using nothing but a regular text editor is for more knowledgeable people who don't need to be told that they have a syntax error or misspelled a function name. Telling someone just starting out to forego stuff like that just seems cruel.
They can safely ignore the more complicated functions of an IDE, though.
>>258935667
The codeacademy course is pretty bad (barely covers OOP), but it shouldn't really give you any trouble. Especially with python since it's fairly idiot proof already.
If you seriously can't get it down, then you're probably right.
>>258935136
Learn math.
Programmers who don't know math are absolute hell to work with.
Programming on a team with math-retarded programmers is like trying to kayak with somebody who's determined to use their feet to row.
They fuck things up, they can't understand optimization, trying to speak to them about big-O notation is a nightmare, and their comments are on the scale of "Move this thingy over there because it looks like it goes faster this way".
Every programmer should be some sort of a mathematician as a base default, just like every construction worker who builds houses should have a base understanding of architecture.
>>258936175
Dude stop with the STEM circlejerking. I get that math is important but most people don't care.
I don't even know how to begin making a game.
I'm fairly alright at programming and currently I am developing some plugins for Cinema 4D, but games? No clue where to start
>>258935667
I made it to the battleship game part of that course before I realized my programming days are over.
Fuck. I just don't get it.
>>258936225
text editor doesn't mean notepad
>>258935818
http://knowyourmeme.com/memes/mathematics-phd
>>258936252
>Every programmer should be some sort of a mathematician as a base default
Not your call to make man. There's cost-benefits to this kind of stuff.
>>258936085
No.
Do software engineering, then do some more, then start messing with modelling and texturing, then do some more programming, fail.
Become an humanities student.
>>258935737
last time i saw anything from agdg posted on /v/, it was some weird pedo games with demented text and rpg maker graphics. kinda got a weird vibe from that place. i'd avoid it just based on the fact it's over on a cancer containment board like /vg/.
>>258936085
You need vector math and binary operations, everything else is trite for game development, and even binary math is just if you want to work from scratch, although I would highly recommend it.
Also, no I wouldn't say you are in the right track. If you want to make games, just pick up an engine, or start on your own and make a game. Nobody will teach you how to do it.
>>258936085
A single semester of computer science will probably actually put you above most "indie devs."
So sure.
You ain't gonna learn how to program your own fucking physics engine or anything in that short amount of time, but then I took 4 years of almost nothing but CS classes and I still wouldn't trust myself with something like that.
>>258936225
>knowledgeable people
>regular text editor
Next you're gonna tell me unit tests are for losers
>>258936447
>text editor
What does it mean then?
>>258936228
I have almost come to terms with the fact I'm dumb.
>>258936582
Notepad++
>>258936085
A former teacher of mine said the minimum amount of time you had to put into becoming decent was 7 years or 8000 hours, whichever took the longest.
>>258936582
check out sublime text
Is there a modern 3D engine that doesn't require programming knowledge to do anything with?
>>258935948
It's called "cel shading".
In the simplest form, it's using standard phong shading, but rounding the final color to a specific interval. You can obviously fancy it up, get better performance, better looks, and outlines and shit, but starting simple and actually implementing it is always best.
>>258936813
No.
Even the most advanced engine will require you to at least learn some basic scripting.
>>258936673
Notepad++ is horrible, I only use it for shaders because of the pretty colors.
Seriously , just use Visual Studio, it's a great IDE and has good compilers.
>start playing with UDK
>this shit is pretty cool
>have no idea how to get anything I want to start working and no idea what I want to start working on is
never will I be able to perfect the jagged alliance 2 clone of my dreams
>>258936813
Unity and UE only require scripting. Which is extremely easy, at least for small projects.
>>258936532
>>258936494
>>258936454
>>258936695
I'm actually planning on getting a degree in programming. This is just my first semester after working for 3 years to save up some dosh for college.
They offered me a degree plan for video game design and creation or a general studies for programming and I took the general studies as I have heard that college video game design courses are worthless.
I really really want to make video games but I figured if I couldnt make that happen the general studies in programming degree would come in handy.
>>258936825
So is material based?
Interesting, i had my first experience with dealing with materials today and it was pretty fun.
>>258936813
GameMaker, maybe, but even then, you need some scripting to do anything remotely interesting.
Reminder that programmers are literally the garbage men of Computer Science.
People who want to work for VIDEO GAMES are the toxic underbelly of post-secondary education.
Pic related, a real Computer Scientist.
>>258936942
>Scripting which is extremely easy
Ok, I will try to learn some basic scripting in C or java.
>>258921008
Games are like 95% model design, animation and drawing, so unless you can draw like a motherfucker you cannot develop games.
>>258936093
Learn vi for Unix.
It's still not great for programming like vim is, but it's on every Unix by default from AIX to HP-UX to BSD to even the fucking pseudo-POSIX subsystem of AS400.
>>258936813
You can find visual scripting things for Unity such as PlayMaker and uScript.
I think there is an engine called Godot that uses visual programming and can do 3D too.
>>258935615
i agree. don't go to /agdg/
it's currently filled with raging SJW types capable of a lot of mental gymnastics
gamedev.net is good
>>258937004
That sounds good, but in my opinion doing generic programming (I.E. not gamedev) is the most boring thing ever. It feels like you are contributing towards nothing of essence.
Of course, that's just me.
>>258937004
Yeah sounds like you made the better choice, even if you don't end up working with video games you're still qualified for other programming jobs.
>>258937004
Dodged a bullet there
>>258937089
Not material based, no. It's a different shader.
>>258937139
EBIN troll :^)
>>258937004
They're not worthtless, actually, they'll teach you exactly what you need to know and no more bullshit, like CS has with as the circuit board thingies, i mean, what game developer needs to know that?
While the pay is much better if you have CS and get a stable job, you'll need to study more things focused at programming for games, and will have no practice with programming for games.
It's just a matter of choice really.
>>258937189
I just want to make some prototypes but if it means anything I do have a friend who is an artist who is professional level who I could slave into doing model design and drawing.
>>258937247
>it's currently filled with raging SJW types capable of a lot of mental gymnastics
>AGDG
>SJW
Are you disregarding the fact that a guy making a loli rape simulator is a regular dev and half of AGDG supports him?
Where do I make money on this?
>>258937189
>Games are like 95% model design, animation and drawing
95%? Nah, man, nah. I'd say 50% and another 50% programmers. 60-40 at worst. There are a ton of programmers and scripters in any AAA title.
>>258936532
>A single semester of computer science will probably actually put you above most "indie devs."
No the fuck it won't because an "indie dev" at least has a fucking game out you piece of shit.
Stop attempting to waste people's time with subjects they don't need to fucking learn.
>>258937189
Not necessarily, seeing as i cannot draw a line and can make 3D models just fine.
>>258936451
>Not your call to make man
I wish it was. I have programmers under me who I have to pretty much correct every commit for because they'll write recursive functions that will try to go hundreds of thousands of levels deep, copying every parameter on the way up.
"cost-benefit" is usually bullshit. It's something managers throw around to justify hiring complete idiots, and then they don't realize that their more skilled programmers are doing less of their own programming than reprogramming everything the dipshits do, and then they wonder why the programmers are still having trouble hitting deadlines even thought they hired more programmers.
Hiring a programmer who can't into math is a waste of money, unless you have them stationed permanently on UI-duty.
Thread probably already has all of this advice, but:
- If you haven't done programming before, take up C#. It's a good language to learn principles of code in without wrecking your brain with bullshit that's only necessary 1% of the time. Java is also good for this, because both languages are basically the same, but C# edges Java out with good libraries and IDE.
- Use whatever language helps you make games quickly. C++ is more powerful than C# for example, but you don't need that power most of the time and it'll cost you a lot of time developing high-performance code.
- Use whatever engine will help you make games quickly. Unity engine is very good for rapid prototyping but it has some shortcomings. If you want to make something in 2D and are decent at code then you probably don't need an engine, just a couple libraries like XNA or similar.
- Make lots of games. The best way to achieve and maintain a game development steez is to make a lot of little games, because it feels good to make something, and having a prototype that's playable from early on in development will help you decide if it's worth pursuing the idea or not. Your first project being some ambitious big thing is a stupid idea that will probably destroy your motivation to work.
>>258937382
>EBIN troll :^)
Community college graduate detected.
>he's probably never even heard of Church
>>258937139
You science worshiping fucks are single-handedly DESTROYING CIVILIZATION.
Thanks for that you pieces of shit.
Meanwhile programmers are just relatively normal people doing creative things that they love.
>>258921008
It would be good if you could learn C++ because it's very common but if you're doing basic 3d things and you're new the best thing to do would be to learn C# and use Unity.
OOP is gross and C++ is a bastardized language
pure games are created in C
>>258937189
>so unless you can draw like a motherfucker you cannot develop games
Some of the best games I've played have been flash games with stick figures.
>>258937550
Make it a 2deep4u text adventure game where you are a red pill who hasn't seeked SJW enlightenment.
My advice for when you actually start working on something:
FINISH YOUR FUCKING GAMES.
Don't end up like me or /agdg/. I have so many games at various stages of development on my harddrive. I never keep my promise to come back and finish them.
>>258937004
>They offered me a degree plan for video game design and creation or a general studies for programming and I took the general studies as I have heard that college video game design courses are worthless.
Smart man.
Just for fun, take a few of their "video game" courses and look at the people who took that degree course.
You'll be relieved.
Just as a heads up, you don't make video games because you love video games.
You make video games because you love programming and video games. If you don't love programming, don't do it. You'd be just as well off becoming a chef because you love to eat, even though you hate to cook.
Making video games is a shit ton of fun, but not because it's video games. It's fun because it presents unique problems to program around and solve, and allows you to fully play with real-time programming and graphics concepts.
>>258937247
>it's currently filled with raging SJW types capable of a lot of mental gymnastics
Disgusting.
Is this true? What's up with "creative" or "artistic" subjects being full of retards who don't understand the science behind racial differences?
>>258937917
Why not just go for assembly code then?
>>258937917
>mfw I code in C style but use C++ namespaces and templates
>>258937262
>>258937269
I've actually had some experience in High school with programming.
2 Years of Java and 1 year of c++ but I gave up on it when the teacher was switched out on us on my senior year with some former marine corps programmer who took all the fun out of it for me and told me my dreams were worthless and that video game programming was a shit dream.
I have not programmed for 5 years since then and just recently decided that its what I want to do with my life as I remember how much fun I had learning programming with my first teacher.
The last thing I programmed was a mini old school zelda adventure game with 5 other friends in the class. It was the most fun time doing homework I ever had.
>>258938000
I loved programming the replacement teacher just made me so mad and hate myself and my dream.
>>258937561
No, it's 95%. Programming isn't that important in game dev. Programmers are a dime a dozen, but good artists are really hard to come by.
>>258937616
You are aware that making video games is programming right?
Stop arguing in support of the oversaturation of retard code-monkeys who don't know what an algorithm is.
>>258937484
A lot of people are against Sim Loli though.
>>258936532
>A single semester of computer science will probably actually put you above most "indie devs."
No it won't.
>>258938192
Isn't C++ great? You can use it however you want, including C with some C++ features
>>258938000
>You make video games because you love programming and video games
100% this, even if you flunk out of making video games if you love to solve problems it really shouldn't matter.
>>258938097
i dare everyone on /v/ to make a sidescroller using assembly
>>258938097
I wouldn't be able to create an efficient enough standard library
>>258937616
I'd say that everyone in college should take at least an introductory computer science course.
I'm not saying they need to learn to program, but a basic understanding of the parts of the computer, basic troubleshooting knowledge, and at least barebones knowledge of how a computer operates are all nice to know, especially in an age where just about any job you get is going to require a computer in some fashion.
C++ is worthless unless you exploit templates
I'm kinda interested in graphics programming but I tried reading Bjarne Stroustrups book on C++ and gave up after 3 hours when I couldn't even work out how to install Visual Studio so I could compile a program
>>258937382
>>258937089
>>258936825
>>258935948
thanks anons. my dream is to create spiritual successors to thief much like dishonored has, but with less focus on being an unstoppable killing machine like corvo and more emphasis on being indecipherable from shadows.
>>258936451
>>258937650
I agree that mathematics and logic are important. After all, programming is basically just those things applied in computers. My computer science course included a decent amount of mathematics, and I did a bit more on top of that because I took the games stream, which required some physics and advanced maths for graphics programming.
When I graduated I was a head and shoulders above my regular CS fellows, and I have come to realize in the years since that my university's course structure was far better than many other universities in my state.
tl;dr Certain elements of Math & Logic are important to programming because I have anecdotal evidence
>>258937247
It is not filled with SJW.
>>258938353
I made a drill program in assembler once, took me well over a week, never again!
>>258938424
>when I couldn't even work out how to install Visual Studio
Yeah...that's not the best sign.
>>258937089
>So is material based?
No, it's never done in the fixed function pipeline. It's in the programmable pipeline, so it's separate from the concept of "materials".
Unless you're talking about something besides OpenGL and Direct3D, in which case Material can mean something completely different. I'm a GL guy.
>>258938192
Those names are absolutely horrible, kill yourself.
>>258937139
Well, I guess you're right about computer scientists not being garbagemen, at least.Because Java has garbage collection.
>>258937917
You mean games that aren't ever completed are created in C because you have to pass a billion arguments to get anything interesting done.
C++ is just C, except you can actually get large projects done.
>>258938492
>tl;dr Certain elements of Math & Logic are important to programming because I have anecdotal evidence
Nobody denied this. One simply has to point to a game that was made without advanced knowledge of programming or math and that destroys the "you have to take CS" bullshit arguments ITT.
I don't know any of the top of my head but I've heard it from a few devs before. Probably flash game devs.
>>258938580
I mean I installed it but I had no idea what I was doing and I don't even know if I got the right version
The book just said "refer back to section X to for resources on how to compile a program" then there was nothing there, so I did some googling and apparently Visual Studio is good for compiling C++ source code,
>>258937089
It's done in shaders, not materials
>>258938353
>using assembly
Hello World in windows assembly:
.486p
.model flat,STDCALL
include win32.inc
extrn MessageBoxA:PROC
extrn ExitProcess:PROC
.data
HelloWorld db "Hello, world!",0
msgTitle db "Hello world program",0
.code
Start:
push MB_ICONQUESTION + MB_APPLMODAL + MB_OK
push offset msgTitle
push offset HelloWorld
push 0
call MessageBoxA
push 0
call ExitProcess
ends
end Start
So, what's the differences between C, C# and C++?
If you learn one, do you know most of another?
>>258938665
Man this bitch and that animation is sexy.
Who is she?
>>258938280
>Programmers are a dime a dozen, but good artists are really hard to come by.
GOOD programmers are not a dime a dozen, retard. What would you know? You are just a shitter.
am i doing it right
>>258938445
Dream a little smaller for now, anon.
>>258938910
C# is like java
C is pure
C++ took that pure thing and caked it in mud
>>258938910
Yepp. You also know a lot of Java and C.
>>258938269
Video game programming for a big company is kind of a shit dream.
Not that it's unreasonable, but because programming video games for a big company is shit. It's not fun at all.
The best is to find a good company to do fun regular programming for and do indie games on the side. That's what I do, and I've never been happier in my life.
>>258938424
if you want to be a graphics programmer you're better off learning math, it's all math
>>258936468
Risk of Rain came out of AGDG
>>258938792
Well sure, but half the fun is writing your own graphics libraries, and good luck doing that without at least a cursory understanding of linear algebra
>>258937189
How do I learn to model/animate?
>>258938391
Says the shitter that hasn't programmed anything of significance in his life.
Do you have to be good with numbers to do programming? I'm hopeless with mathetics
>>258937189
>>258938280
>People responding to this retard seriously
Come on, guys. He honestly just said that programming, the very core of game development, isn't very important in game development.
You're being trolled.
>>258939156
>but half the fun is writing your own graphics libraries
Some (most) people don't find that fun. More power to the people who do though.
>>258938496
It is. Go there now and check how many people are bitching about Loli Rape Sim. Maybe it's just a few dedicated shitposters, but the situation is out of control. They start shitposting everytime the dev posts his game.
>>258938910
C is the most basic and pure form of all those languages there. C++ added OOP and a couple of other features into it; some people appreciate the added options, some people think they're just muddying up what was already a perfectly fine language.
C#...I don't have any personal experience with it, but from what I hear it's more similar to Java than it is to either C/C++. And that's typically not a good thing. C/C++ are far from perfect but Java is quite a few steps below either.
>>258939269
Basic programming, no. Optimisation and bigger projects, yes.
>>258939010
noted. im working on a small VN using renpy for now. baby steps
>>258937981
>spend like 20 hours learning sfml and building simple prototypes
>start working on simple ball game and quit before I progressed past having collision between objects and simple gravity
>>258939269
Yes. If you dont know your math. stay away form programming.
>>258939032
I know its not an ideal dream.
Its still my dream though. I just want to make a fun videogame that thousands of people enjoy.
I want to be able to see my game packaged on a shelf on some game store and say I helped make that.
I know the horror stories and I don't care I just want to make video games man.
>>258938618
Mmaterials in shaders pretty much mean some uniform values that you pass to the shader for instance exponents and shininess values for specular lighting etc, to make something seem more or less shiny, etc etc.
>>258938792
>One simply has to point to a game that was made without advanced knowledge of programming or math and that destroys the "you have to take CS" bullshit arguments ITT
No it doesn't. An exception does not destroy the rule.
I can point out Bill Gates and Steve Jobs all I want, but that doesn't mean you're more likely to become a billionaire if you drop out of college.
>>258939387
Never start with something graphical anon.
I had no idea there were so many programmers on /v/ that actually know shit
I thought this place was just filled with dumbass shitposters like me
>>258939345
it was literally like 2 or 3 people
one of which wasn't even from /vg/, let alone /agdg/
>>258938906
>windows assembly
What does that even mean? Assembly is hardware specific, not OS specific.
>>258939269
Most libraries will take care of the higher-level math for you, so it's not ESSENTIAL, but you definitely are at a disadvantage.
Please, at the very least, become familiar with arrays.
This thread has more misinformation than a John Lennox convention.
>>258938910
C is an old language that provides a bunch of power if used correctly. C++ is basically an extension of the C language to include classes and a bunch of other OOP-style stuff. C# is basically Microsoft's answer to Java, with a C-like syntax. C# is an interpreted language so it's slower than C++ but it's also really friendly to write in due to the excellent IDE support provided by visual studio. It's a really cute language that can do a lot of cool stuff due to .NET - C++ is used in games dev because it can produce really high-performance code that interpreted languages can't because it has access to memory management and a bunch of other useful shit IIRC. Thing is for most games, you don't actually need that performance and the hassle of coding in C++ with weak intellisense and all its quirks is probably not worth it unless you're coding a serious 3d engine.
Is C# an easy enough language to start off with? It was either that, C or java.
>>258938910
>So, what's the differences between C, C# and C++?
The differences are small but there's a lot of them. One of the major ones is that C++ and C# are object-oriented while C isn't. C++ was sort of meant to build upon what C was but since it came out C has been updated to be very similar.
As stated by >>258938192
You can basically code using C in C++ and vice versa. C# is a little on its own since it requires the .NET framework and is syntactically similar to Java, but it's still very closely related to the others.
Going to be learning Java soon.
>MFW I will be able to make a futuristic 80's inspired text adventure/RPG
>>258938910
C - standard programming language
C++ - a superset of C that alllows for far better design of code
C# - microsoft's Java, ironically much better than Java itself.
>>258939612
Googling the ".486p" bit there tells me that it's assembly for the 80486 processor implementation.
>Logical error in your code
>That fucking feel when you fix it
I love this shit
I don't care if it was a shitty mini text adventure game either.
>>258939345
Not that many people. And I don't see how Anons not wanting their games associated with little girl rape being a "raging SJW" type. I think you're freaking out over nothing.
>>258939612
It uses Windows API.
>>258939345
As a longtime member of AGDG I can confirm that due to the rise of the #agdg tag on tumblr (from devs using tumblr as devlogs) it's getting a lot of SJW and jewish attention.
Examples:
>attempted censorship of Sim Loli
>discussion of microtransactions and intrusive monetization (ads)
>2deep bullshit
>Kickstarter and Greenlight viralers
>>258938906
exactly
>>258939512
Depends on the shader. With GLSL you handle that yourself, and it's just a vector value.
"Shininess" is done with a standard reflected dot product calculation. That is to say, specular lighting is done with the raw math, rather than a "material" the pipeline knows how to handle.
>>258938984
>using ii instead of j
What the hell are you doing man.
>>258939210
Patience
Talent
Tutorials
>>258939730
if you're making a text adventure game you may well not need something as advanced as Java, anon. There are tools out there for making interactive fiction
>>258939828
seeing something successfully compile after fighting errors is such a great feeling
>>258939828
>segfault
Fuck you. Fuck you fuck you fuck you.
COULDN'T YOU AT LEAST TELL ME WHICH GODDAMNED LINE?!
>mfw this thread
what the fuck do these words mean
what is an "object" "class" "return" library" "assembler" etc
>>258939612
>What does that even mean?
Those messagebox and other functions come from the winapi, which is windows only.
>>258938984
>black-as-my-soul IDE skin
Like a true hacker.
>>258939976
boku no use valgrind
>>258939571
>An exception does not destroy the rule.
Many exceptions obliterate your retarded fucking rule.
>but that doesn't mean you're more likely to become a billionaire if you drop out of college.
Doesn't mean you're likely to become a billionaire if you go through college either, in which case you're wasting resources.
I'm not saying that a CS degree wouldn't make you a better game developer. I'm saying that a CS degree isn't something most aspiring game developers are going to get, and indeed I wouldn't be surprised if most successful "indie game" devs didn't have CS degrees.
>>258939932
ah, that was just a quick thing I made. I'm going to revise that shit either way. I sometime use ii and jj instead of i and j to be able to tell them apart easier. Do you like this more? Sorry, no syntax highlighting on this one
>>258940023
just a bunch of neets thinking they can program
>>258939921
There's no difference between GLSL and HLSL in this one. They both use materials. Specular Lighting has the shininess value which you can play around with to change the 'look' of the object.
Pic related is my game.It's called GOTY.
>>258940176
lol
>>258939032
What indie games do you make anon?
>>258939497
I can respect that.
Don't let anybody shit on your dream, anon.
>>258939862
Same. It's out of control. People think they can viral their shit in our thread just because they pop in once every other month. And they start a shitstorm every time a local hero and AGDG treasure like Sim Loli posts. It's a mess in there. I told them to stay away from tumblr, but they didn't listen. How to fix AGDG:
>no shilling at all, not even from long time members
>no commercial games
>anyone that shitposts sim loli gets instabanned
Would solve damn near everything.
>>258940137
Are you using notepad or something? That's painful to read. Muh colors.
>>258940076
It's notepad++. I actually wrote that in VS. I usually work at night and I can't stare at a white screen for extended periods of time when there's little lighting in the room, so I chose one of the dark default skins
>>258940176
Is it on steam?
>>258940163
A material is an abstraction. Shaders have no notion of materials, just uniforms and textures. The distinction is made because of the differing storage and access patterns, not because of prescribed use.
>>258940023
We have google for a reason
>>258940285
opened that in notepad because I'm on someone elses laptop to write something up on word. There's nothing with syntax highlighting or colors on here
>>258927846
>What's wrong with endl?
>>258929120
>std::endl isn't '\n'
>it's '\n' followed by std::flush
Nothing "wrong" with it, but flushing streams has a small but extant cost.
Literally will never matter until you want to worry about multithreaded logging or are writing out at least tens of thousands of lines per second.
>>258940176
i would legitimately play a game with that art style (but only if it had the mouse cursor in it)
>>258940362
Um, I never said that material is something standard? It's just a struct, or variables, whatever you prefer to use.
>>258940131
I'm not involved in this argument but I find your stance against getting formally educated disturbing. Is american college really bad or something? I'm an ausfag and going to university was probably the best thing I ever did.
>>258940379
what is "google"
>>258940163
They don't use materials. Any concept of materials is only what you imagine.
"materials" are abstractions. If you use the concept to make things easier to visualize, that's fine, but neither of those languages inherently has any concept of a material.
>>258940474
Neither HLSL nor GLSL "use" materials.
>>258939976
You don't use a debugger?
>>258940417
printf() is far faster than std::cout, always.
>>258940610
>people actually believe this
>>258921008
If you have to ask, you're going to fail
>>258940662
If you amortize the (essentially negligible) costs of a flush every time you write std::endl to a single flush once per frame, then yeah, there's a minimal performance benefit.
Or you could just write a newline and not std::endl.
>>258940023
An object is like it sounds. Trying to put it into layman's terms, you stick a bunch of variables into a pre-described "class," and then whenever you need to you can create an "object" of that class which contains all of the variables already.
Sort of like this:
You create some code for a "Person" class which contains the variables "name," "age," and "profession." Then you can create an object of that class (e.g. personBob would have name=Bob, age=27, profession=gigolo, personClara would have name=Clara, age=13, profession=student).
Many functions in a program are set to "return" a value based on their inputs. For instance, a function you create to add two integers would "return" an integer, the sum of those two integers.
Assembly is...okay, so, you might have heard that all computers use to speak amongst themselves is binary. That's an oversimplification, but it works for our purposes. The computers use binary, but you code in English, and assembly is what is used to translate your English code into binary.
Again, much of this is an oversimplification, and you can probably get better examples by Googling some basic programming tutorials.
Don't know anything about programming so thought this would be a good thread to ask, is it true when they say multithreading software is hard?
I heard some other coders say that effectively getting a game to use more than 4 cpu cores is hard and tedious and can make the engine crash easily if data from one thread overwrites data from another thread or something like that
do you think devs can use all 6 available cores to them in the new consoles or is it just too hard to get software to spread across 6 cores?
>>258940608
This is the least sexy thing I have ever read
>>258921008
I once made a game.
>>258927171
>listening to neckbears on /g/
/g/ dosnt know shit, they just talk out their ass and have a superiority complex.
>>258940610
This is how you spot poor programmers.
>>258940527
>I find your stance against getting formally educated disturbing
I find your retarded belief that if we suddenly told everyone to study computer science, everyone would become computer scientists. Sorry, but most people are stupid and uninterested and you're just wasting resources that way. And you don't find any of this "disturbing" you hyperbolic jackass. Go suck some nerd's pencil-dick on reddit.
>Is american college really bad or something?
I've heard American secondary education is the best in the world.
>was probably the best thing I ever did.
Cool. Too bad not everyone is you.
Why are programmers and engineers such arrogant douche faggots?
>>258939014
>>258939029
>>258939351
>>258939650
>>258939702
>>258939797
Okay, thanks for the explanation anons.
>>258931604
I tried to do XNA but it says i have to have a xbox to connect to. wtf
>>258940848
It is hard, the number of cores to utilize has nothing to do with it though.
>>258940718
Don't be that guy. If he starts doing this as a hobby, who knows how far he will go.
>>258940905
>American secondary education is the best in the world
I'm pretty sure the reason for american unis to be at the top of all rating lists is because the rating agencies are american themselves and are biased
>>258941032
because you're a fucking retard
>>258940559
The fuck are you talking about? "Material" is just a buzzword that means varying the shader's properties concerning the way the object is lit to give it a sense of being actually made of a different 'material'.
Unrelated to the thread but I've been researching how to solve merge conflicts for a plugin which would allow people to write programs which each other in real time.
How useful would such a program be(all it really would do is offer some basic hosting options and send the same info to all users currently connected)?
>mfw people get mad when I talk about performance enhancement through architectural decisions such as data oriented design
>>258941051
You shouldn't need it. XNA supports making games for both windows and xbox, so maybe you're just trying to create an xbox project? I've heard it misbehaves in Windows 8 though.
>>258939650
So should I go with C or C++ for my first language then?
>>258941156
Baseless accusation of bias.
Be honest with me /v/. Is it possible for a single person with the help of his friend who can do 3D models to make a game on the level of
http://games.adultswim.com/candy-mountain-massacre-action-online-game.html
>>258940848
With job queues and proper use of synchronization primitives for asynchronous I/O, it's safe and not that hard.
>>258941235
>tfw someone uses OOP near you
>>258939959
Where is the best place to get that last thing because I definitely don't have any of the others.
>>258940902
Either give an example, or get the fuck out.
Calling names doesn't prove your point and only makes you seem like a shitter.
Also, nobody fucking uses either cout or printf in their final game product.
>>258941032
Because their jobs are mundane and make them hate their lives.
>>258941301
Between those two, C. Becomes easier if you can focus on writing small programs and not worrying about classes.
>>258941301
not him but don't choose C++. Learn Java, C#, C, or Python first. C++ isn't a good first language imo.
>>258940276
Nothing released yet.
I'm not much of a game designer, so mostly a bunch of tech demos and graphics testbeds.
I still have fun with it.
>>258941431
http://c2.com/cgi/wiki?PrematureOptimization
>>258941060
>>258941385
I heard it gets to a point where you just can't utilize more than a certain amount of cores because you can't split certain things across lots of cores easily and there's only so many operations a game engine does that can be running on different cores each
>>258941156
US has some of the best Unis, but there are many Unis all over the world that are top notch.
Saying that a Uni is good because it is in the US is ignorant though,
In the end the University doesn't really matter, if you don't devote yourself to your goals you will fail no matter what university you attended.
>>258941301
Either way works, but if you want to learn to 'make video games', don't do either.
>>258941301
C#
>>258941284
i'm following you
>tfw like programming but haven't done anything more than some small projects in python
>always out of ideas and lack dedication to do anything
I hate myself
>mfw some neerd was struggling with data oriented design near me
>>258941301
C is the best language to learn programming in. Why?
>small number of language primitives - no manual required
>WYSIWYG - no overloading or encapsulation
>basically can be serialized into machine instructions - makes sense
tl;dr it's fucking simple
>>258939828
>error in your code
if it knows this why cant it fix it for you?!
>>258940023
>What is an:
>object
A location in memory that has a value. "Object-oriented" is different and refers to a language that allows polymorphism (one thing handling multiple types of things) and inheritance (one thing can be based on a previously defined thing)
>class
Only in object-oriented languages. It's basically a custom predefined object. For example you can make a class called "car" and it can have variables associated with it like "make" and "model" and functions associated with it like "accelerate" and "honk".
>return
The end result of a function. 2+2 returns "4".
>library
A list of premade functions and the like.
>assembler
When you write a program it needs to be converted into something the computer can actually understand and that would be assembly.
>>258941284
Game?
C++ is the master race as it can be used to do anything.
Java is a cheap "easier" language as there is no pointer and no need to delete objects.
pic related, my technician degree project I had to work on with 3 other mates.I'm glad it was done holy shit working with others is hell
>>258941301
Go for C# imo. I started with C and had a really hard time changing my mindset to OOP.
>>258941032
I dunno man you just gotta roll with it. People have strong opinions.
My favorite is this one Android dev, Romain Guy. Back when I was developing for Android (this was way back in version 2.x and stuff), I would come across so many stackoverflow and google group postings of like 50+ people trying to figure out some workout for some stupid thing Android does, asking "How do I do X if Android does Y?"
Then you scroll down and you see this faggot Romain Guy. His fix?
Literally
>Don't do X then.
His shit doesn't stink and his code is the most brilliant thing on earth and god's gift to man. If you're having a problem with it you're either just plain retarded, your design is wrong or you're using it wrong.
I saw this pattern repeated so many times for so many different things. Fucking hilarious.
Diane Hackborne is a bro though.
>>258941528
Thanks for proving me right. Much appreciated.
>>258940848
I try to operate with as few threads as possible, since adding in threads means you have to worry about synchronization and shit like that. Further, anything with threads is an EXTRA level of bitch to debug.
That being said, I didn't have the greatest teacher for that class and it strikes me as the kind of thing that's not particularly difficult once you fully understand the concept. I just...didn't fully understand all of the concepts.
>>258939137
years ago. Modern AGDG is shit.
>>258941284
Why are the tanks fighting around a black hole? Isn't that dangerous?
>>258941747
If you'd liked to be exposed again, continue to post.
>>258941658
>WYSIWYG - no overloading or encapsulation
That's not a good thing, it makes the design process of code painful as fuck
Have you even written anything above 100 lines?
>>258941534
Basically, you want to schedule your operations such that no core is idle at any given time. So you don't run your operations through a pipeline, you shuffle them around until there is no empty space.
>>258940610
why does it matter, you only use it for debugging purposes
>>258941196
That's not what "buzzword" means.
It's an abstraction.
Shaders don't have "properties".
Most importantly, it's an abstraction that does not exist at a language level. GLSL "has" materials as much as C++ and C do.
>>258941831
Are you saying this thread isn't shit?
>>258935737
>>258936468
absolutely not
it's kickstarter begging, circlejerking and steam group bullshit 24/7, do not bother
>>258941301
Neither. Object-Oriented Programming is a highly common programming paradigm.
C++ is OO, but it also has a bunch of other bullshit to deal with that you probably won't need and will only complicate your learning.
Java is strictly object-oriented and was the language I learned first, because the compiler will tell you where your errors are so that's nice.
C# does everything java does (except ridiculous multiplatforming) but better, so I recommend that. Grab yourself a development environment (I use Visual Studio 2010), and if you can, try to find some of the microsoft learning shit for C# programming. I reviewed some of those materials at one point and it looked like a great way to teach yourself some OOP principles and to learn about some features of visual studio too
>>258941880
As long as you continue to be a shitter that STILL keeps proving that nobody on /v/ knows anything about programming.
>>258941885
>you in charge of reading comprehension
I said it was best for LEARNING. I agree that once you understand, you can add on abstractions like templates and overloading.
>>258941837
What's the point of making a Spacewar! style game if you don't have a black hole in the middle?
I always wondered.
I'm studying programmation at school. My goal is to make some games. Nothing huge, just some game that I can play on my phone and shit.
Let's imagine, if I make money with a game. How would we share the money if there's a guy doing the art, a guy doing the music and another one doing the programmation ?
>tfw studying electrical engineering but kinda wanna switch to computer science
we had a course recently about numerical analysis and it was mostly matlab programming, and it was actually kinda fun, albeit frustrating sometimes
oh well, soldering stuff isnt that bad either
>>258941897
It can really slow your program to a crawl if you use cout (or printf, for the matter) a lot, even for debugging purposes.
>>258941895
So is coding a game to effectively use 6 CPU cores as difficult as I've heard?
Programming languages don't exist.
If they do, what made the first language?
Checkmate, CS majors.
what is this "component based" meme that i keep hearing about?
>>258935737
You should go see for yourself. It's not as bad as people say. But on some days it does get like that. Like today.
>>258942138
Share by the hours put into the game? Otherwise share it evenly.
>>258942138
Ever heard of the concept of forming a company?
>>258941659
Because it doesn't know what you're trying to do.
Learn how a computer works.
>>258942152
don't you learn CPU/GPU architecture and shit like that in electrical engineering?
>>258942225
Effectively, not necessarily. To their full potential? Yeah, that's pretty hard. Then add in GPU/SPU compute and its data transfer latencies and it gets even more difficult.
>>258942138
>programmation
is that even a word?
>>258942242
the c compiler was written in c
in fact any language worth its salt compiled itself
did i just totally blow your mind
>>258941837
Yeah but I really wanted to allow curved shots. It makes sniping way harder but it looks so cool.
>>258941570
Oh hey, guy. Yeah I haven't done any recreational programming for like 3 months now. I think working as a software developer kind of leaves me burned out, so when I get home all I wanna do is play vidya, not make vidya. Also reading all this five guys bullshit just makes me depressed about how broken the industry is.
>>258942383
>is that even a word?
I have the feeling he's french
>>258941908
>Shaders don't have "properties".
They do, they are called constants and you can pass them as uniforms. Have you ever written a shader? Shininess can be changed per object to make them look like they are from different 'fabric'.
>>258942021
>implying I even browse 4chan
My friend linked me to this shithole, but thanks.
>>258942138
>Let's imagine, if I make money with a game. How would we share the money if there's a guy doing the art, a guy doing the music and another one doing the programmation ?
Programmation is not a word. "Programming." One guy does the "programming."
Anyway, that's really a question to decide amongst yourselves based on how much each of you think your work adds to the whole. If you're deadset on proportional pay then the programmer would almost definitely be earning the most, and depending on the game the other two are fighting for scraps.
That, however, is a very good way to quickly lose friends.
>>258942383
in spanish is called programacion.
>>258942243
Decoupling of a designer-driven game object model from a compiler-driven language object model.
>>258942356
i think i'll have an opportunity to do at least, i've only read one year, starting the second next week.i chose EE over CS because i wanted to make cool effect pedals to my guitar
I cant design code without seeing what im doing.
visual basic is very helpful because i know exactly what im making but when its just code i dont know how its turning out so i cant do it.
>>258942609
>Programmation is not a word
>Knows how to program
>Ignores the existence of other languages beyond english
>>258942431
Sorry to burst your bubble but they were originally bootstrapped.
>>258942225
>So is coding a game to effectively use 6 CPU cores as difficult as I've heard?
How would you split a program 6-ways?
You could do rendering on one core, updates on another, physics on the third and networking on the fourth. What about the other two? You can use them for some specific function you want to happen faster and can be parallelized. IN GENERAL, though, you won't have perfect parallelized code and sometimes you can even harm your performance by trying to make something multicore, due to OS optimization of distribution.
>>258939862
Don't forget the Painter's Guild dev who literally posted on SRS Gaming on Reddit.
AGDG used to be so cool around 2011, and then it took a shit dive.
>>258942243
As far as I can tell 'component-based' doesn't have a clear meaning. Best definition I've got is it's like in Unity, where you can attach a 'component' as a child to any object, including other components. These can include behaviours, models, input schemes, AI, etc etc.
So when you want your player character, you put together a structure that contains the various components of what that entity should do, and then it all just sticks together and works.
>>258921008
C++ if you want 3d
Java w/ Slick if you want 2D (or just use gamemaker or whatever); Python with pygame if you want to prototype quick
Unity if you want to port to a phone
C/C++ w/ SDL if you just want to goof around with a pet project
>>258942453
i know precisely what you mean
i haven't made ANY progress on my game in probably a month because working 9-5 as a web dev made me sick of hammering out code pretty fast
but now i'm back at uni so maybe i'll write a dialogue system one of these days
one of these
days......
>>258942883
Path finding. So much path finding. ONLY PATH FINDING.
>>258942431
>the c compiler was written in c
No it wasn't, are you fucking retarded?
>>258941925
It's more focused than AGDG.
>>258931773
It's actually called unityscript, not really javascript. Theres a slight resemblance between the two due to the syntax and that they are not strictly typed whereas C# is very strictly typed. It's just called javascript sometimes because reasons I guess. Probably to make people feel more familiar with it.
Also C# has access to anything in the MSDN documentation, so you should just use that.
>>258921893
>C
You can program in any language you want to, but C doesn't even come with intrinsic error handling worth shit. You will waste all your energy building boiler plate code before you finally get to any actual game logic. Have fun taking 2 years to make a game you could do in C#/Java/C++ for 6 months.
>>258942883
So M$ and $ony dun goofed hard by opting with 8 weak cores instead of 4 stronger cores in their consoles?
>>258943086
http://docs.unity3d.com/ScriptReference/Transform.LookAt.html
>JS
>C#
>Boo
ok
>>258942549
What cool websites do you browse?
>>258942883
NO NO NO
You're making the beginner's mistake of thinking of it this way.
Basically, you have one thread (or job if you want to get meta) whose purpose is to schedule "jobs". A job is an atomic operation, such as a collision test or a state machine update. The key to these operations is that they can be executed in parallel without stepping on each others' toes. As the job list is populated, the worker threads (one per core) run in an infinite loop of claiming a job, executing it, and repeating.
This is the basic framework of a multithreaded game engine, excluding things like dedicated I/O or audio threads as well as GPU compute possibilities.
>>258942986
What's wrong with A*? In any case, if your areas are large enough that pathfinding is taking up a considerable amount of processing cycles then I would say you should probably be looking at creating a specialized pathfinding algorithm for your specific case.
>>258943238
reddit, 9gag, ebaumsworld, tumblr, knwoyourmeme, failblog, kotaku, neoGAF, IGN
>>258921482
Well, I am reading C# right now and while I admittedly have the same feel I do know that it's a thing that takes years to get into and that I just gotta keep at it.
But honestly, it does help to know that I'm not the only one that feels like this and that can be enough encouragement to keep going.
>>258942614
Oh okay
In English it's "programming," which is a type of noun called a gerund
I'd recommend starting with Java. It's highly inefficient, generating massive amounts of syntax at assembly through features such as the garbage collector, which will manage your memory for you. Once you can put together a modest working application (5000 lines or so) with working examples of inheritance, polymorphism, overloading and overriding, I'd recommend moving on to C. This will teach you how to handle pointers and manual memory management, and how to mimic OO programming using structs instead of classes. The fundamentals of OOP and memory management will leave you ready to assimilate other languages with relative ease.
>All these people saying you need to know maths to actually program
>Need to know maths to do any shit in a 3d environment
I'm terrible at maths, just how much do I need to know?
>>258943320
The other side of things is what he was saying though.
>>258943579
You don't need to understand them necessarily, just know that matrices can be used to represent transformations, quaternions and vectors can be used for orientations and positions, and so on.
>>258943238
I don't peruse the internet or play video games because I'm not autistic.
>>258943321
It works fine for a few requests but once you hit a few 100 A* alone won't be enough from keeping the CPU crapping itself.
>>258943367
You might find it's easier to learn going through a bunch of tutorials while making your own programs. That's pretty much how I learn anything new.
>>258927171
>not using namespace std
>2011+3
>>258943579
For general programming, none.
For game programming, linear algebra and geometry.
>>258943579
You need to have a general understanding of matrices, vectors, tranformations and how to break down a complex problem into smaller ones.
>>258943579
Nothing, unless you want to learn actual Computer Science.
see
>>258937139
>>258943579
>I'm terrible at maths, just how much do I need to know?
Computers do everything with math. If you want to understand what you're telling the computer to do, it helps if you have a grasp of some mathematical concepts.
>>258943725
>retard post
>stupid memespouting
>still has a subject line from a shit thread he made
epic dude, just epic
>>258943765
er *trigonometry
>>258942185
If you're debugging you aren't using it a lot
>>258942138Si tu veux développer sous android j'ai peut-être un ami qui serait intéressé. Ou du moins il pourrait t'aider si tu es en license ou en BTS.
Si intéressé drop un contact.
>>258942505
That's not what a property is. That's a variable.
You're conflating.
> Shininess can be changed per object to make them look like they are from different 'fabric'.
What? Shader languages have no concept of "objects". "shininess" is not a language feature.
Pic related. It's a fragment shader for specular lighting. Notice that there are no language "properties", just uniforms and varyings (which are standard variables), and there is no language concept of materials nor objects.
>>258921008
Learn C/C++. You'll be programming in C++ if you ever make it to anything genuinely serious, and C# is also good to know, so you'll have some good background before you jump into that (although C# is a bit different). Other languages are all going to be simpler/give you less power; might as well learn it right the first time instead of being babied and not realizing how much you've been omitting from the process.
>>258943162
http://wiki.unity3d.com/index.php/UnityScript_versus_JavaScript
get fucked
I want to make a 2D RPG game because I don't know anything about 3D. Should I start with RPG Maker?
>>258943583
It's much harder to architect things that way. However, if you set your scheduler up to deal with cache coherency and stuff you can toe the line between job-based architecture with system-based architecture.
shot in the dark, but does anyone know of a good tutorial to implement ribbon trails in 2D? I use the average normal of each mid point but I keep getting overlap problems at sharp angles because offset points overlap each other.
>>258941301
Learn whatever works for you.
Look up any language and you'll find a list of decent/good games made with it.
To be honest I actually studied a few different languages at the same time to get a grasp on the basic stuff. I ended up dropping all but one as I found good support and that it just seemed more intuitive to me.
I dreamed of making some limb based combat fighting game with realistic injuries. Like getting hit hard enough in your hand could crush a knuckle. How much hell would this be to make?
>passionate as fuck about programming and vidya
>never studied in it
>downloaded a lot of books and took a lot of notes, basically learning by myself at least to the point where code was readable and I could write small simple programs
>finally get into a computer sciences course
>it's in fucking french
>I've studied in english that whole time
>mfw after first course
all these fucking terms, I know them but in the wrong language. shit is confusing as fuck and i'm already a very confused person
but programming just gives me that thrill man, I love it when you're looking for the mistake you did and then you fucking find it, and everything works out perfectly. and running my programs and trying to break them in every way possible to make it as idiot proof as possible
>>258943579
The vector and matrix math used in graphics are easy for the most part. I have taken extensive linear algebra lessons and what is used in graphics is pretty much the basics.
>>258943765
>>258943934
Shit I don't think I ever got that far into it
>>258943782
I don't even know what most of those words mean.
>>258943825
I know only the most basic math required to graduate. How much more should i know to understand this stuff?
I'm a new shit to programming
What exactly is this fabled "Object Oriented Programming?"
>>258944503
i don't think that would be too bad to program, but it doesn't sound that fun at all. also you'd have to do a metric fuckton of sprites and copy paste
>>258944503
I guess that depends on exactly what kind of impact you expect a crushed knuckle to have on how the player moves, attacks, guards, etc., but a general rule of thumb is that any added amount of complexity adds roughly "shittons" of hell.
>>258940608
What the fuck is wrong with you? Leave the erotic games to the Japs, please.
>>258943579
You can get away with not knowing all the formal stuff, but I found it useful to deal with the theory before putting it into practice. The following things will generally be useful:
- Boolean Algebra (understanding how to structure a logical statement, eg. A AND B vs A OR B)
- Understanding the idea of a function (eg. F(x) = x^2)
- Order of operations
- General arithmetic
Some other stuff is situational, depending on your application
- Linear algebra (for graphics + physics programming)
- Physics, usually just kinematics and dynamics (for physics and some AI programming)
- Trees and Graph theory (for some data structures)
- Sets and stuff (for advanced collections)
>>258944721
A way of shoehorning code to make it easier for programmers to understand and harder for computers to run.
So it's casual shit.
>>258944503
Limb injuries exist in many games. I'm assuming you want it to be hyper-realistic to the point that it becomes technologically unreasonable.
How do I get good at art? I can write the code and the music but the art assets are just too hard to handle.
>>258943579
>I'm terrible at maths, just how much do I need to know?
LEARN BACK-END WEB-DEV
u = postrequest.username
p = postrequest.username
query = FROM db SELECT username, pass WHERE username = u
if not uqery:
print(YOU ARE NOT IN DATABSE!!!)
else:
if u and (secret_function(p) == pass):
login()
NO MATHS REQUIRED!!!
>>258943579
hey anon, I though I was terrible at maths too but believe me the actual math course is a lot harder than the actual maths you'll have to use in a programming career
just go in it man, and study a bunch
>>258943976
You gotta be the most dense motherfucker I've ever seen in my life. Have you even wrote anything outside shaders in your life?
>Pay 20 dollar monthly sub for Unreal Engine 4
>Unsub
>Have access to the the current version of UE4 and all its tools + sample projects
>Don't get updates to engine/new projects
>Pay 20 dollars again months from now if there are updates you want
Unreal Engine 4 uses C++ but also lets you use Blueprints, which is visual graph based scripting that is pretty great if you don't know C++.
I would suggest using Blueprint while learning and trying to use C++ as much as possible.
As for languages to learn if you are actually interested in programming, learn BOTH Java and C++. If you learn Java first look into how the Java Virtual Machine manages memory and learn about what pointers are so you aren't a Java babymode retard.
You all have many opinions on what languages to start with, but what is a good beginner tutorial?
I'm assuming you all started in different places, so what is all of your opinions on what tutorial is best for the absolute beginner?
>>258945075
Get 3D Studio Max for starters if you want to do 3D modeling.
Blender is a monstrosity that's 1000 times harder to use.
Then follow tutorials to learn the tool.
I am also horrible at art, I just don't have the patience required. If you try to rush through it you won't make anything worthwhile.
>>258944069
yes
if so go to /rpgmaker/ thread at vg
it is quite a supportive thread
no matter what, don't wander into /agdg/, it's shit there
>>258945075
You get good at art literally the same way you get good at everything. You just keep fucking it up until you learn how not to fuck it up quite so much, and then you keep on fucking it up some more.
With art, however, more than most other things, it's particularly important to get actual, tangible feedback. You need to get that shit looked over by people who can tell you what exactly looks fucked up, and who can HOPEFULLY give you some pointers on how to fix it.
Back in the day /i/ was good for this, but I haven't been on there for years so I don't know what that board's like anymore.
About math:
For graphics programming, Linear Algebra (matrices, vectors, transformations quaternions).
For physics simulations, Calculus (I wouldn't be able to say up to what level).
For IA, Probability and Calculus.
Also for somebody who wants to learn, in my opinion the best approach would be to download Unity, and try to make some games using C# (it's becoming the favored language in Unity). It's absolutely essential those games are finished, because if one day one wants to get hired by a company, they would only care for finished work you can show.
Then, afterwards, one can make the jump to C++ and something like Unreal Engine 4.
In fact C#-->C++ is a good route, because C# is closer to C++ than Java, and you could keep using VisualStudio (since both languages are accepted).
Also this is a great book about all the pieces that form a modern game (the second edition just came out, but the first one is easily foundable in torrents):
http://www.amazon.com/Engine-Architecture-Second-Jason-Gregory-ebook/dp/B00MMOJ076/ref=sr_1_1?ie=UTF8&qid=1408582716&sr=8-1&keywords=game+engine+architecture
>>258945230
what's the pros/cons versus unity and UE4?can you make a game in UE4 for free, and get "donations" to make another game
>>258944721
It's the fundamental idea behind the most common programming paradigm. Basically it allows you to describe your own custom 'data type' (normal ones include numbers, text strings, etc). For example:
class Person
{
string name;
int height;
}
represents a person with a name and a whole number height. You can extend that class:
class Student extends Person
{
string course;
}
This is a student, with a name, height and a course. You can do anything with a student that you can with a person, but more.
It's mostly just a way to structure ideas in a relatable way.
>>258944721
>Object Oriented Programming
Two things. Polymorphism and inheritance. Polymorphism is when the same function can use different data types. For example a length() function that can be used to give the length of a string or the number of members in an array. This function accepts both strings and arrays. It's polymorphic.
Inheritance is when a data type or function can be based off another one. For example you could write a function PenisLength() that inherits from length() but adds "inches" to the end of everything it returns. It has the same abilities as whatever it inherits from has plus whatever else you want to add on top.
These two things are great but people tend to be snooty about its "purity"
>>258945230
I thought UE4 was free for non-commercial products? That was the idea I got by looking at all of their legalese, anyway.
I am, however, really, really bad at reading legalese.
>>258944721
It's fucking awful, that's what.
>>258944640
So I can just learn a little bit then? That's not too bad.
>>258944874
So advanced stuff is generally only for specialized applications? Ah I see.
>>258945085
I don't know what that is, but I will look it up, thanks.
>>258945128
Thanks for the words of encouragement anon, I'll try.
Anyone got some tutorials on how to learn c#?
>>258945307
>>258945307
http://msdn.microsoft.com/en-us/library/aa288436%28v=vs.71%29.aspx
I haven't personally gone through these ones, but Microsoft does a pretty good job of explaining themselves. You might run into a problem where they're explaining the language assuming you already know some stuff about object-oriented programming.
>>258945447
I plan on making a 3D game, I'll try out both programs and see what I can cook up.
>>258945681
That's a really shitty way to present it but maybe it works for people that don't know shit about programming.
>>258945954
don't look it up it was a joke
>>258937917
this is the truth
if you use objects you are a communist
>>258944907
Except it's much better for managing large codebase and it also allows for far better design principles among other things.
But you wouldn't know, Mr. contrarian shitposter.
>>258945085
>>258945954
>back end web dev
>SQL
>2014
This man is trying to sabotage you.
Learn Node.
>>258937917
HAVE FUN DOING STRING OPERATIONS YOU SHIT
>>258945307
I'm this guy so I'm hardly an expert >>258930638
I used a combination of Beginning Visual C# 2012 Programming by Watson to learn C#.
Torrent here http://kickass.to/beginning-visual-c-2012-programming-v413hav-t7000992.html
and http://rbwhitaker.wikidot.com/c-sharp-tutorials
To get a handle on most C# stuff. I still haven't really used some stuff that is syntactically kind of confusing for me like events, but there's plenty of info there to pick everything up.
And I used the first half of the O'Reily Learning XNA 4.0 to learn basic XNA shit for 2D games.
I did have some prior programming experience but the book is good enough that you could probably just start there as a complete beginner.
>>258945835
>OOP/OOD
>awful
Ignore this anon at all costs, he is not only misinformed, but dangerous.
>>258946417
OOP is the direct cause of 99% of bugs, performance issues and design bugs in todays computing world
>>258945954
When you get to the point of actually fiddling with graphics you can learn the math required as you go.
>>258945954
>So advanced stuff is generally only for specialized applications? Ah I see.
Yes and no. Having a good understanding of maths will generally help you understand problems related to maths easier. It's alright though, you may well be able to just pick it up as you go.
The number 1 advice I can give anyone for programming is to do a lot of programming. Encounter interesting problems and come up with solutions. Read shit on stackoverflow about your problems and understand what the 'best' solution is. Just do it a bunch, and like anything else in life, you'll get there.
>>258945230
Cool, I started on C++ (which was probably not the best idea) I should try UE4 out and see if it can help me learn more. Is it just scripting like Unity, or is there more to it?
>>258938192
I only know C, what's with the '::' in there? Are they the same as dots?
>>258946234
OOP is what you do when you want to sacrifice runtime performance to make it easier as a programmer. I don't believe in that.
>>258946582
>a widely used coding paradigm is responsible for many bugs
It's almost like the more popular a thing is the more issues are going to be found with it. Crazy.
>>258945602
Thanks anon.
The only matrices I learned in my day was this shit
use unity. you can jump in right away and learn as you go. i've been learning c++ for the past week and what i can do so far, compared to what i was able to do when i just jumped into unity after watching 40 minute crash course on youtube, is laughable. there are zero benefits to c++ other than saving a couple thousand bucks if your game is a hit.
>>258946417
OOP is for fucking cleanfreak pussies
>>258945781
>Polymorphism is when the same function can use different data types
Nope. Polymorphism allows two different (but related) data types to have methods/functions with the same name, and the version of the method that gets used in a call is resolved depending on the type of the object on which the function is called. Same name, multiple different bodies, that's the "Poly-"
What you were describing (a function accepting different data types) is generic programming, which is a way to design functions so their algorithms are able to operate on different types of objects (that's why those functions are considered "generic").
>>258946875
Those are pretty much what matrices look like today too, anon.
I get the feeling that basic math never really changes.
>>258929763
>>oop
>Huh?
>>258946667
>what's with the '::' in there?
Tells the compiler where to look in the libraries for the function you're using.
>>258945228
I'm a software developer professionally.
I primarily use C, C++, Ruby, and Lua at work, with pieces of Haskell.
I only do graphics stuff on my free time.
Shaders have "properties", "constraints", and "materials" as much as base C does, which is not at all, at a language level.
In fact, I'm a little baffled at your use of the word "constraint" to mean the same thing as "uniform" here, given that a constraint is a language restriction (or some other restriction), and has nothing to do with a variable passed in. Constraints are syntax-related solely.
>>258946137
>>258946243
Oh, sorry I don't really know enough to get jokes like that. Sorry.
>>258946605
>>258946624
Okay, thanks anons you have put my mind at ease.
>>258921008
Assembly.
>>258946843
If a better paradigm was prevalent we wouldn't have as many bugs with it.
>>258946784
>he thinks performance is everything
You know what's a great metric to gauge your effectiveness as a programmer? Delivery.
>>258927171
Learn C.
Is much better.
>>258947104
>C, C++, Ruby, and Lua at work, with pieces of Haskell
What the fuck do you do?
>>258946843I bet he uses linux
>learn how to 3d model
>can't use photoshop or any image editing program
>can't understand engines for shit
>just a whole bunch of untextured 3d shit lying around that I can't put into any engine
>>258946582
OOP caused more bugs? that's ignorant.
Worse performance? Maybe in the past. Developers nowadays avoid deep inheritance trees and unnecessary calls to virtual functions.
Bad coding was always the number one reason for bad performance anyway.
>>258947127
>tfw you will never be pro enough to write games in assembly for the NES and genesis
>>258946965
Thanks for the correction! So polymorphism is basically "overloading" a function then.
>>258946951
can you post that crash course vid? i wanna try this out
>>258947274
>>he thinks performance is everything
>You know what's a great metric to gauge your effectiveness as a programmer? Delivery.
Literally the antithesis of Computer Science.
>>258946875
When people talk about matrices for graphics programming, it's usually a 4x4 matrix used to transform shit for rendering. The nice thing is that in most libraries you have a set of functions to create the matrices for you, so even though I didn't really ever 'get' matrices, I can still use them to great effect.
>>258921008
Use Game Maker.
>>258947274
I like programming and I do it as a hobby so I'm not constrained by any kind of deadlines. Go back to your enterprise Java codemonkey.
>>258946965
What he's describing is just method overloading.
Turning off syntax highlighting was one of the best programming decisions I ever made.
>>258947387
This is why you need a full team.
>>258947274
have fun writing 50000 classes and interfaces that just bloat your project and make it harder to manage while I'm over here writing code that does something
http://gamesfromwithin.com/data-oriented-design
>>258947382
Monitoring work for Unix.
Our monitoring agent is written in C++, using Lua as an extension language. Our backend software is written in Ruby on Rails, using C for intensive portions. Our database software is written in C, with Haskell as an optional query language (not my idea).
I primarily work the agent, so I overwhelmingly do C++ and Lua.
>>258947387
Just make all your models flat colors. If anyone accuses you of being lazy, it's art style you ungrateful fucks!
>>258947390
oop is bad coding
>>258945484
Yeah I'll check it out thx anon
>>258947514
If you like coding you usually aim for good code design, not performance. To take everything out of a machine (especially consoles) sometimes hacky code is required.
>>258947856
Data-oriented design (in my opinion) produces beautiful code and good performance.
Abstraction doesn't really float my boat.
>>258947274
"YES. I NEED ALL 400 OF THE CLASSES I WROTE, I'M NOTHING IF NOT EFFECTIVE."
>tfw learning 6502 assembly
>tfw counting clock cycles
>>258947806
Said no one ever
OOP was only ever good when Smalltalk did it.
If you are trying to do "OOP" in any other language, you are not doing it as well as you think you are and you are just making everything awkward.
>>258947274
>You know what's a great metric to gauge your effectiveness as a programmer? Delivery.
In business software or webdev, yeah. In game programming, performance is everything, because they are real-time soft applications.
>>258947421
>So polymorphism is basically "overloading" a function then.
Yeah, in a way it is
gotta admit that c++ is a pretty useful language, but fuck those inheriting obsessed faggots like for real man
>>258947979
I bet you also paint your room with toothbrush
>>258948046
>real-time soft *applications.
*meant to write "simulations"
>>258947986
except for leading computer scientists around the world
Alright mateys
As someone who is hopeless with maths and whose technical knowledge extends as far as building a PC and some basic cisco networking, how long would it take me to become as good at programming as john carmack
>>258947947
Reusability and expandability is thrown out of the window though.
I can draw and program but can't music
Where do I learn?
>>258948273
like?
>>258948446
OOP and DOD have nothing to do with code reuse and extension. If you're a good programmer you can write modular code under any paradigm.
>>258948563
You don't.
Sorry, you weren't born a musician.
>>258948318
>how long would it take me to become as good at programming as john carmack
"Carmack is best known for his innovations in 3D graphics, and is also a rocketry enthusiast and the founder and lead engineer of Armadillo Aerospace"
Sounds like this guy's a bit of a math geek. You might want to consider looking for a different idol.
>>258948610
use google
>>258948318
You honestly don't need much math at all beyond basic algebra for most applications, and when you do need something past that, I should hope you're self-sufficient enough to find out how to do it, but it's not that bad.
But if you're a CS-purist faggot, you need all the math ever made ever.
>>258941032
>Why are programmers and engineers such arrogant douche faggots?
Because they weren't arrogant enough to be military pilots.
>>258948318
Multiple lifetimes.
You don't "become as good at" something as people like him.
>>258948838
>CS-purist faggot
>>258937731
The problem with OOP is that a lot of people think that the longer the inheritance chain in their program, the better, when in reality the most central and important idea in OOP is not inheritance the encapsulation of data. The control and management of data is the main problem of procedural languages like C, however when data is owned by objects is much easier to control the state of that data. Alan Kay himself has publicly said that he regrets using the word "objects" so much, since the central point of SmallTalk was the messaging between the objects and not the objects themselves.
>>258948318
No less than 10 years. Honestly, if you were going to be the next JC, you would be reading about pointers and binary trees right now instead of being here.
>>258948563
http://4chanmusic.wikia.com/wiki/Sticky
Scroll down to the musicmaking part, good luck m8
>>258949049
>not inheritance *the encapsulation of data
*but
>>258947514
>>258947650
>>258948046
>>258947963
Wow, guys.
At the end of the day you need to choose the right tool for the job, and part of that process is to define your requirements. I want my shit to run well but also to be finished in a reasonable amount of time, be readable, and support reuse and maintenance.
>>258948563
Get famitracker or Fl studio.
Research chords, scales, and chord progressions. I found those to be the only part of music theory I needed to know myself.
Make at least a song a day. Even if it's just 1 pattern/few seconds. try to pump out a few of those a day if possible until you get good enough at that. Then step out of your comfort zone and make longer songs. 4 patterns, then 8, then 16.
This could help a little with music theory. https://www.youtube.com/watch?v=rZr5k1_9Dds&list=UUPGDb-wJHNpoEls7Iqbywow
>>258949204
OOP is not the ubiquitous "right tool for the job" either, faggot.
>>258945617
I do not have experience with Unity, but it is more expensive to get all Unity features compared to UE4. That being said UE4 is still really new while Unity has a shit ton of tutorials and community guides available.
You have to pay at least 20 dollars for UE4 assuming you dont care about updates (which are actually pretty big and frequent right now) and Epic takes 5% revenue from the game or something.
>>258945793
See above. 20 dollars a month for access to up to date versions of everything and 5% of revenue.
>>258946662
No experience with Unity.
Here would be a good resource to make comparisons yourself:
https://docs.unrealengine.com/latest/INT/Programming/index.html
Take a look at Blueprints as well because even a retard can make functional shit with them, which is unfortunately why like 90% of the community tutorials for UE4 are currently on Blueprints and not scary C++.
>>258938984
>variable*1
Anon, what good is that going to do?
>>258947435
https://www.youtube.com/watch?v=mbm9lPB5GPw and the following 2 or three parts. he gives a very basic intro to blender, how to port things from blender to unity and how objects and scripting work in unity.
also, pic related is my first c++ "game".
>>258949346
Did I say it was?
>>258949549
You >implied it because all you did was attack the people against OOP.
Learn CSS. It's like C, but with style sheets.
This is how easy it is to say 'Hello, world' in CSS:
body:after {
content: "hello, world";
}
This is how bloated C is:
>void print_hello() {
>printf("Hello, world");
>}
>int main(void) {
>print_hello();
>return 0;
>}
>>258948563
>>258949275
When you listen to music make sure to note the structure too. Break the drums, melody, and bass down into patterns.
>>258949036
jokes on you, I learned how to code all on my own nigger
>mfw I code horrendously and I don't give a single fuck about OOP or anyone else reading my shit
>mfw I just leave commented out lines everywhere
>mfw I use signals like "fuck" and "nigger" everywhere
>>258949418
Not that you mention it, absolutely nothing. It was a different value originally and i didn't realize I could have just deleted it when it turned out to be 1 at the end.
>>258949760
>mfw I don't give a shit about programming
CS purists don't worry about OOP
>>258949634
Well I don't see it that way, anon. My whole issue was that this:
>OOP is what you do when you want to sacrifice runtime performance to make it easier as a programmer.
Is unrealistic in a working environment.
what's so bad about OOP, other than the classic "shit programmers use it"
>>258949532
>using blender
>ever
thrash software
I am going to college for programming in September, but I am having second thoughts about if this is a good idea or not
>>258949640
>not just learning C++
cout<<"Hello World"<<endl;
>>258949926
i agree with this man, fuck blender
>>258949204
>At the end of the day you need to choose the right tool for the job, and part of that process is to define your requirements. I want my shit to run well but also to be finished in a reasonable amount of time, be readable, and support reuse and maintenance.
I agree with you, but you CAN'T satisfy all those variables in the same amount. Certain kinds of software favor a couple of them more than the others. For example, a game doesn't need to be so readable and maintenable as a long-term-support business application, because games doesn't have that kind of support; however in a game, bad performance (30 fps) will get bad reviews, less sales, less money. Hence C++, harder, less readable, better performance.
On the other side of the spectrum, the user of a business application can wait 1 second before obtaining the result of a query, and that kind of application is a service which will indeed need maintenance, which implies the need for readability. Hence, managed languages like C# or Java, more readable, average performance.
ok, so I've got c++ up to linked lists, taking another trimester's worth, trying to learn python on the side, and looking into system admin/stuff like it
Am I EVER goign to need these goddamn math classes they require? Because Calc II/III sound like a bitch and a half
>>258950012
Do you like programming?
There is your answer. Job market is good and anyone who says otherwise lives in a shitty area for software.
>>258947417
>implying assembly is difficult and not just tedious.
Try it, it's marginally confusing until you work realise what structured programming was about, but then it's mostly just handling dull low level details like register allocation or dragging instruction menomics out of a hundred page manual.
>>258950292
That's all well and good if your game is complex enough to require high-performance code, but nothing I've made so far has had any performance issues. If I ever start a project where I'm concerned about performance, I'll choose the right tool for the job.
>>258949385
Cool, thanks anon.