Why don't more game developers program in the thinking man's language?

Why don't more game developers program in the thinking man's language?

Other urls found in this thread:

youtube.com/watch?v=2IXdEsMfVHw
youtu.be/s8nFqwOho-s
youtube.com/watch?v=Qk0ICis0E68
twitter.com/NSFWRedditGif

>game developers
>capacity for thinking

>Haskell
It will never be production ready, and you know it

rank most comfort shit with you

c++ > java > c > python >c# >> ass shit >> meme web tech

C > Lisp > Ruby > Python > C++

Thread theme:
youtube.com/watch?v=2IXdEsMfVHw

Java>C#>meme web tech>C++>>>>>structured programming meme languages like C

>c++
>comfort

Does this mean Sup Forums can start having daily programming threads now?

The GPU is stateful, and not a monad. You would know if you could stop jerking off to endofunctors for long enough to call an opengl function.

He's right, C++ lets me express exactly what I want in exactly the manner I want to.

Newsflash, /vg/ has had them since before you started visting Sup Forums.

Go back to Sup Forums and Sup Forums

Does it even matter that much when you're making a game? I mean most of the shit you're limited to is dependent on the engine itself

Why don't more game developers program in COBOL?

>Does it even matter that much when you're making a game? I mean most of the shit you're limited to is dependent on the engine itself

How do you think engines are made?

/agdg/ does not count. That place is full of the worst memeing brainlets this site has to offer.

i hate how i have to baby sit everything on C++, you need to explicitly assign pointers, you need to explicitly destroy objects, etc

its like breathing manually

Whats the best language to learn for someone who wants to make a comfy turn-based strategy?

What matters is making so the lowest settings can be ran on toasters so you can grab that (huge) part of the fanbase, other than that, not really.

And then there's C when even to do simple string operations you need pointers :^)

Why don't more game developers program in PASCAL?

hope you allocated an extra byte for the terminating zero

Depends. Do you want to think or do you just wanna dick about?

so help me anons , i am making a simulation game in JAVA . most of shit is getting near close but currently its based on text. I want to use a graphic library , never developed a game with graphics.

where should i look ,(dont say use unity or anything)

also would be nicer if its easier to convert that later to Android

its fully based on menus and choices , so no graphics ( maybe .gifs as 2D sprite animations )

i developed a gui system for program but it was basic ass shit like using javax.swing with JFrame etc

explicit pointers are awesome and so is scoped object lifetime
C++ might be a mess, but RAII is excellent

If you understand what you're doing you can make smart pointers that are destroyed along with the value they were pointing at when said object goes out of scope.

>Pascal
>Posts SU
typical

Qt

But anime is inherently techloligy. Also, why? Sup Forums is basically Sup Forums these days anyway.

>writing mobile app in react native
>backend is meteor
>literally race against documentation changes
>long term memory visibly degenerates
>tfw you are addicted to cutting edge
>tfw your fingers are moving on their own
>tfw you are slowly becoming meme framework cumdump

This is a humble reminder that learning how to develop your game from scratch (that is, not relaying in game engines such as unity and GMS) will take you closer to deploying a game and beat your competitors.

Because games and game development are so popular, and you are competing against other games for attention, it is in your interest to use more performant tools that allow you to program your game without cutting any feature or depending on closed software.

If you are interested in defeating your main oponents (those using game engines, like the ones listed in the op poster), here are some tips:

- Use efficient and performant programming languages, such as c++, rust or nim.
* cplusplus.com/doc/tutorial/
* doc.rust-lang.org/book/
* nim-by-example.github.io

- Learn algorithms:
* coursera.org/specializations/algorithms

- Learn maths and physics:
* khanacademy.org/math
* khanacademy.org/science/physics

- Learn how to get the most out of your cpu:
* dataorienteddesign.com/dodmain/
* learncpp.com/cpp-tutorial/79-the-stack-and-the-heap
* fgiesen.wordpress.com/2016/08/07/why-do-cpus-have-multiple-cache-levels/

- Learn how to do graphics:
* opengl-tutorial.org/beginners-tutorials/

Good luck.

>Using New
>Using constructors and destructors

Someone explain it to user. Save him.

>Sup Forums is bassicly Sup Forums these days and anime is technology

In modern C++ you probably shouldn't use new.

If your needs are simple, just allocate a large block of memory and allocate into it like a stack, and pop from it when you're done. Use assertions to make sure that you never get bad references.

wondering same shit.

At this point you might think that nothing of this applies to you. Please, reconsider it:

- Data-Oriented Design (Or Why You Might Be Shooting Yourself in The Foot With OOP)
gamesfromwithin.com/data-oriented-design

- Pitfalls of Object Oriented Programming
.slideshare.net/EmanWebDev/pitfalls-of-object-oriented-programminggcap09

- common OOP game engine development pitfalls
bounceapp.com/116414

- Three Big Lies
cellperformance.beyond3d.com/articles/2008/03/three-big-lies.html

Think about it in this way: understanding how your computer work might not secure you success, yet it gives you a huge advantage in this race.

You might say that the latest famous indie game done in unity didn't put any effort into engineering at all, but this is only illusory. You cannot see how many hours, days and months the developers behind successful unity (and GMS) games had to put to work around its inherent limitations.

You can say to yourself "I don't need anything else, i'll relay in my luck" or think wisely and increase the likelihood of being success by expending some time learning more about computers.
Everything depends on you.

Humble reminder that game performance barely matters, and there's no way that you as an indie are going to make games that will push the limits of your hardware anyway.

this is meanest troll post in the history of troll posts

Explain why please... fucking meanies

I'm coding a wannabe game engine in C++ using SDL. Right now I'm on Loonix, it's super smooth, but I'd like keep working on it on Windows.
Thing is, I don't really get the whole deal with .dll, and that WinMain() function remplacing main(). I already had enough trouble having git and gcc working on Windows...

Where can I read about all the intricacies related to developing for Windows? Should I just use an IDE?

It's really time to switch to C++14 user. If you're still manipulating raw pointers in C++, unless you're in a very specific use case, you're doing it wrong.

They absolutely can. Just not normally.
But you run into that all the time with self-modifying code. (you don't usually reuse the old function you just alloc a new one and throw away the old)
The terminology is very confused.
>that's not real 3D
I think you're assuming something about raycasting you shouldn't.
Raycasting is the general idea of casting a ray into space that might intersect something.
Raytracing is most often referring to the rendering process where you simulate photons (in reverse for optimization purposes) against a scene to render a very fine image.
Raymarching (which you may also have heard of) is like raytracing against implicit geometry. See
youtu.be/s8nFqwOho-s (jump to 39 minutes in or something)
It's not defined by vertices or polygons of any kind its just mathematically defined geometry. Raymarching is a method of visualizing this.

That's my understand anyway. I do find a lot of literature to be using raycasting and raytracing interchangeably though.
Are you talking about aggydaggy? Because that's not a programming thread. And it started here on Sup Forums.

sdl's whole thing is platform-independence

if you're initializing your windows and subsystems through sdl then you shouldn't need any specialized code, maybe excepting some compiler built-ins if you use vc++ instead of cross-compiling with your linux tools

why would you change from linux use mint . its literally windows but not shit.

i mean i barely open my windows if im gonna program some c# shit or play vidya (barely do these days)

linux is comfier and faster and better so on

im not saying there arent benefits, i say i hate doing it, something like Java automatically collects all the trash, it automatically assigns variables without values to null without the need of dealing with pointers, etc

and at the end of the day theres only a very negligible loss in performance if you are working on a pc made in the last decade

overall i like it better

SDL2 replaces WinMain. You just need to link to SDL2main (on MinGW at least) and include SDL2.dll in your game's executable directory.

Handmade hero might be for you. First 40 episodes implement and explain setting up a game from scratch on windows.

Shouldn't be too difficult really. They explain the winmain and event loop well there.

But since you're using SDL just look up how to use SDL on windows.
I do recommend using visual studio for that actually its a massive resource hog but both mingw and cygwin are just not convenient to work with.
And the VS debugger isn't bad. You'll need it for Nsight when you inevitably have graphics bugs.

if Sup Forums is so against the progress, why don't you guys have fun on commodore demo programming or something? it's finest form of fun

Learning all that stuff won't give you a better chance at making a good game, having high IQ would.

If you're using C++ you're concerned with efficiency. Garbage collected programs aren't as efficient as manually managed programs unless you have 5 times more memory than your heap size. C++ has good idioms for making manual memory management painless.
I don't see what the problem is.

>and at the end of the day theres only a very negligible loss in performance
>negligible

you don't write in c/++ to get a 5% boost to the program's overall peformance
you write in c/++ to get a 200% boost to really critical pieces of the software that get utterly fucked when gcs/heap allocators/etc. start doing things you didn't tell them to do

Programmers can only think in algorithms. That's why they're more often than not sperglords

Java is shit and you should know it

youtube.com/watch?v=Qk0ICis0E68

I know what a tagged union is and it's not a tagged union. A tagged union is a datastructure that can hold values of multiple types. What I'm describing is JUST a form of polymorphism.
But this is a pointless discussion.

help me guys

its gonna be awesome shit i promise

In that case i still don't understand what makes Cute a class rather than a variable, other than the syntax.

So the difference is that a function once it runs into the Return (or anything that would terminate it) it "dies" along with anything within it that wasn't passed outside (wether from the Return or pointer fuckery), while a class sticks around, keeps running, receiving and making data available to other classes (objects?) until you tell it to "die"?

>That's a good thing though.
precisely

>this is how structured programmers think

do i need to explain why this is a terrible idea, its better to have 100 variables neatly organized inside the objects that will actually use them rather than have em all over the code, what if a library you download has variables with the same name as yours?

user saying things like this in a general programming thread just makes you seem retarded. That kind of binary thinking is ridiculous.
Difficult to believe it's bait even because it's such a poor attempt. Anyone sane would doubt the attempt.

Thank you. From what I understand (I'm pretty new to this, honestly), I'm doing something wrong with SDL, yes? I'll read up on that.
I should've mentioned that, on Linux, I'm working with a a text editor and compiling stuff from the terminal using make. Ideally, I should be able to compile on Windows without touching anything in the code (except maybe the makefile), right?
I that fails, I'll look into Visual Studio.

It's just convenient. My desktop runs Windows for games, and I'm not too fond of dual booting.

What this guy sad
And this one of features that make objects great - they can store all info for processing inside them. In this example class is Cute. Variables a and b are objects, instances of a class. They have similar behaviour but produce different results because of different state.
Classes and objects are used to describe a world with recognisable abstractions. In videogames almost everything us an object, some of them share similar behaviour, all vehicles are ridable, mountains climbable and all women are objects. That's why videogames are inherently sexist.

Cute is a type. a and b have the type Cute. Every variable of type Cute has a variable-within-a-variable named kawai.

that's a very programming thing to say

like i said, i can see the benefits, i respect the language but i dont like babysiting the code

>you're doing something wrong with SDL
You're not getting it to work on windows. That's it.

Instead, a bloated VM is babysitting you.

>agdg is full of 4channers
ftfy

if you want an ide-free existence, look up mingw or cygwin - posix (i.e. unix-like, i.e. what you're used to) frameworks for windows that include gcc, make, and such

having visual studio for debugging is really good. having visual studio litter your directories with its own files is less good, but usually worth it in the long run. you don't have to write it it to debug with it

>portability is a bad thing

There's very little babysitting in modern C++. The only times you need to babysit is when you would want to babysit anyway.

...

C and C++ are portable and don't come with 60MB of bloat.

Is coding fun?

its been like 5 years since i regularly programmed on C++, whats new?

sometimes

>conio.h

not really.

but after coding achieving shit you dreamed of is good

not actual coding

C++11 made RAII actually usable. Also lambdas are nice.

Isn't that equivalent to saying (might be missing some pieces along the way):
a=true;
b=false;
say(a);
say(b);

and the say(bool) function contains a if-else statement and a couple of print statements (one for each case)?

absolutely, is like solving a puzzle but you are free to come up with your own answers

->
That's my standard form. Now look at this:

Class Pretty extends Cute {
bool mature

fuckIt() {
if (!this.mature)
throw 'FBI exception'

if (!this.kawai)
print ('no implementation')

eval('rm -rf /')
}
}

AI is fun to write.
UI feels like twisting own balls, though.

>waste time learning all those stuff
>sales not even 1/20th of games made with rpgmaker with anime tiddies
Stardew valley, undertale all looks like fucking shits and those sold gangbusters.
>it doesn't fair bros
Life isn't. Nothing is. Vidya is more than programming.

Go watch a recent bjarne stroustrup conference talk. RAII and smart pointers for example really help with babysitting.

it might be a good idea to dive back into C++ sometime then

Yes. The key feature is that a Cute can contain several variables bound together, rather than just one. It's like a struct or a tuple.

Messed with haskell for fun, it's entertaining but retarded at the same time.

kys vermin

Imagine that your game have thousands of Cute objects with a lot more then one internal kawai boolean. You can't maintain clear code structure with one branching function, unless you are writing a Grimwah

If you're a beginner, what's the best way to learn Java?

>be original it will pay the bills
>hottest shit right now is made by a shitty developer that can barely use unreal 3.
Be original they said, imitation and bullshittery will get you closer to dreams then honest work, but it goes back into that old saying work smart not hard. If you can soak fucking idiots all day in terrible smelly shit then why not. PUBG proved that.

I love your spirit though.

I'm already using mingw for gcc, git and make. Is the Visual Studio debug tool the same as in the one in Visual Studio Code?

step 1 is to switch to c# or python
step 2 is to switch to c/++ if the stuff you make needs to go fast

Java's simpler than C#. If you're learning then Java is better.

i say the obtimal way of doing things is

>C
>C++
>Java

C will teach you all the basics of a modern programming language, C++ is 90% C and it introduces object oriented programming, Java is 90% C++

I'd help but I'm not a real programmer. I just do shit in game maker to fill my empty days

What's the game like tho?

download jdk and try to write programs. come on, there is gorillion of getting started tutorials online. just start making things, you'll get better with every problem you solve.

Don't blindly jump into java. Depending on wwhat you want to do, some language will be better suited than others.