logs archiveBotHelp.net / Freenode / #1gam / 2015 / September / 11 / 1
LelandAero
hello!
Madsy
POW right in the kisser!
tsatse
good morning
Ploppz
good morning
jerev
good morning
tsatse
how's it jerev ?
booyaa
hai!
Ethanss
What's everyones favourite 2D HTML5 game engines?
Llamageddon
The ones that don't use HTML5 and JS
Oh wait, I don't have any since I really dislike where browsers are going
Ethanss
Lol there's so many people that won't try out games if they have to download them, HTML5 seems great just for that reason.
Llamageddon
I really preferred Flash, of the two evils
E.g. Flash over HTML5
BearishMushroom
Ethanss, Have you looked at Pixi.js?
Not used it myself, but heard some nice things about it.
Ethanss
Nope I don't really know of a lot of HTML5 game libraries so i'm trying to find options
I've already looked at Phaser
Llamageddon
Because even if Flash was crap, it was at least self-contained, possible to disable without crippling web pages, and at least made for what people were using it for
And all the html5 stuff is tackled-on onto years and years of cruft and crap
In a convenient bundle that makes a single text-only page weight 80MB, and anything heavier 400+
Ethanss
Pixi.js looks awesome thanks for that Bearish
BearishMushroom
Anytime.
Ethanss
The only real problem I've found with HTML5 is the fact that you can crash PC's with the right WebGL code
BearishMushroom
Wouldn't that be the -wrong- WebGL code? ;)
Llamageddon
Ethanss: What about the fact that it allows web devs to abuse browsers even more?
Ethanss
What do you mean by abuse the browser?
Llamageddon
E.g.
Creating websites that are dysfunctional on certain browsers because of how much is crammed into them
Ethanss
And Bearish you can right perfectly fine GLSL code that has a massive iteration and lock up peoples display drivers
Llamageddon
Or creating almost inexplicably heavy websites
Be it on RAM or CPU
Ethanss
Which could run fine on the latest graphics cards but would lock up older ones
BearishMushroom
Ethanss, If your GLSL contains massive iteration, it's not perfectly fine.
Ethanss
Well for example if your doing a whole demo in GLSL like on Shadertoy its quite common
BearishMushroom
Yeah, but those shaders aren't really "perfectly fine". They're just that, toys.
Ethanss
Haha I guess
BearishMushroom
Even on desktop it's a good idea to manually unravel loops because you can't trust the compiler.
Ethanss
GLSL ES loops are unraveled automatically by the compiler
BearishMushroom
Desktop GLSL should be, too. But that comes down to the GPUs drivers.
Ethanss
Yea in modern OpenGL and DirectX where it supports branching it won't unravel
Llamageddon
Because of branch prediction?
And if you unravel, you score a hit to that?
Or something?
Ethanss
Yea I'm not really sure how it works, I just know if statements are handled way better on modern GPU's
or branching not just if statements
speaking of WebGL locking up the browser, one of the Pixi.js just froze Chrome >.<
Pixi.js demos*
Llamageddon
Speaking of low level stuff
I was wondering some time ago, about whether/how CPUs could be made faster
BearishMushroom
Moar cycles.
Llamageddon
I was thinking, what if someone were to design a CPU with an integrated calling convention, and cache/registers specifically for saving/loading registers in parallel to other code that is being executed
E.g. while long pipelines can do a lot of stuff at once, with this, you could immediately skip a bunch of code
"skip"
BearishMushroom
Sorry, you went too low for me.
Llamageddon
And tbh, saving/loading registers is the (almost)only "real" overhead of calling/returning to/from function
Since everything else is crucial to the function code itself
Ethanss
too low for me
Llamageddon
Oh well :P
Ethanss
By integrated calling convetion you mean like a standard calling convetion
Llamageddon
Yeah
For my language, I have done some work on a convention that integrates closures and coroutines into the model
Ethanss
i know in windows 64 bit there's only one calling convetion
Llamageddon
You could build that kind of a convention into a CPU, and it would be capable of expressing every kind of flow control that exists
(since coroutines are inherently extremely powerful)
And tbh, even if you had "just" very fast closures, you can do anything you want with that
Hirsch
pushl %eax
pushl $2
call multiply
popl %eac
popl %eax

multiply
Llamageddon
Hirsch: Or, in reality, you save 13 registers when calling, 20 in the function
Hirsch
pushl %ebp
Llamageddon
That's obviously slightly exaggerated, but there's a lot
Hirsch
movl %eip, %ebp
Llamageddon: hi :D
imma building the stak frame
Llamageddon
Hallo Hirsch
Hirsch
movl 8(%ebp), %eax
Llamageddon
Hirsch: Was that a response to what I said, btw?
Hirsch
mull 4(%ebp), %eax
:D
maybe
movl %eax, 8(%ebp)
Llamageddon
Hirsch: pls stop spam
Hirsch
no spam thats thinking
Llamageddon
I know how the assembly for function calls looks
Hirsch
Llamageddon: but i have to restore my base pointer :O
movl %ebp, %esp; popl %ebp; ret;
DONE
:D
Llamageddon
Hirsch: I'll put trash data into it if you don't stop :-O
No, wait, I'll do worse
jmp 0xDEADBEEF
Moahahaha
Hirsch
Llamageddon: interrupt?
Llamageddon
Hirsch: Jumping to some random memory address
Hirsch
Llamageddon: i am currently learning this for the next exam in two weeks :D
Llamageddon
I guess would just segfault in usermode
1 2 next »