[00:13:11] *** Karyon_ <Karyon_!~Karyon@unaffiliated/karyon> has joined #gamedev
[00:13:50] *** Karyon <Karyon!~Karyon@unaffiliated/karyon> has quit IRC (Ping timeout: 250 seconds)
[00:14:46] *** Karyon_ is now known as Karyon
[00:21:18] *** immibis <immibis!~immibis@125-238-72-168-fibre.sparkbb.co.nz> has joined #gamedev
[00:47:50] *** stryx` <stryx`!~stryx@unaffiliated/stryx/x-3871776> has quit IRC (Remote host closed the connection)
[00:49:11] *** stryx` <stryx`!~stryx@unaffiliated/stryx/x-3871776> has joined #gamedev
[01:05:16] *** perplexity <perplexity!~perplexed@unaffiliated/perplexity> has joined #gamedev
[01:32:22] *** Beliar <Beliar!~Beliar@2a02:8108:9640:6c42:3cc6:3051:e9c1:54c2> has quit IRC (Read error: Connection reset by peer)
[01:34:21] <Donitzo> "Observation #3: Software engineers use the Pareto Principle (also known as the "80/20 rule") to delay concern about software performance, mistakenly believing that performance problems will be easy to solve at the end of the software development cycle. This belief ignores the fact that the 20 percent of the code that takes 80 percent of the execution time is probably spread throughout the source code and is not easy to surgically
[01:34:21] <Donitzo> modify."
[01:34:34] <Donitzo> so true
[01:34:53] <LunarJetman> bullshit
[01:36:30] <LunarJetman> a) it's 95/5 and b) refactor.
[01:37:10] <Donitzo> oh yeah, refactor
[01:37:17] <Donitzo> or "write it from scratch!"
[01:37:33] <LunarJetman> if refactor means write it from scratch then you have no clue about what you are doing
[01:37:45] <Donitzo> "Observation #5: Software engineers have been led to believe that they are incapable of predicting where their applications spend most of their execution time. Therefore, they don't bother improving performance of sections of code that are obviously bad because they have no proof that the bad section of code will hurt overall program performance."
[01:37:50] <Donitzo> Again, a very good observation
[01:38:10] <LunarJetman> c) profile
[01:38:29] <Donitzo> c) use your brain
[01:38:38] <LunarJetman> d) you are fucking clueless.
[01:39:01] <Donitzo> yeah, because you are so incapable of figuring out that a piece of code is massively inefficient
[01:39:07] <Donitzo> c) use your brain
[01:39:12] <LunarJetman> d) you are fucking clueless.
[01:39:31] <Donitzo> okay mr "I can't tell that this loop is O(n^2) because I didn't profile it"
[01:39:58] <LunarJetman> algorithmic complexity is orthogonal to profiling mate
[01:40:25] <Donitzo> I'm sure you thought that sentence was very clever
[01:40:54] <LunarJetman> if you are not fucking clueless (see (d)) you wouldn't be using profiling to change algorthimic complexity
[01:42:24] <Donitzo> Oh my god. You are arguing against optimizing your code because it's easy to refactor it, while at the same time arguing that optimization is orthagonal to algorethmic complexity
[01:42:28] <Donitzo> just shut up
[01:42:36] <LunarJetman> d) you are fucking clueless.
[01:42:51] <Donitzo> Yeah, keep repeating that infinitely
[01:43:07] <LunarJetman> QED.
[01:43:38] <Donitzo> yepp, that's what happens when you questions someone's world view
[01:43:42] <Donitzo> must defend myself!
[01:43:51] <Donitzo> I can't possible be wrong about my premature optimzation mantra!
[01:43:55] <Donitzo> possibly*
[01:44:38] *** perplexity <perplexity!~perplexed@unaffiliated/perplexity> has quit IRC (Ping timeout: 245 seconds)
[01:44:42] <LunarJetman> No, I am pointing out that algorithmic complexity is a given and that performance is but one thing to consider when desiging the architecture of a system.
[01:45:04] <Donitzo> oh yeah, the very last thing
[01:45:13] <Donitzo> after all you can add anything post-hoc using refactoring!
[01:45:18] <Donitzo> refacoting is like magic
[01:45:19] <LunarJetman> d) you are fucking clueless.
[01:45:29] <Donitzo> it can change the entire core of everything with a snap of a finger
[01:45:47] <Donitzo> yepp, keep repeating that
[01:45:53] <Donitzo> I'm sure it makes it more true every time
[01:46:01] <Donitzo> refactoring*
[01:46:28] <LunarJetman> yes it is a fact that some people are really bad at refactoring mainly because their designs are so brittle that refactoring is hard. your aggitiation is probably due to the fact that you know your own designs are too brittle to refactor.
[01:46:55] <Donitzo> wow, did you invent that yourself?
[01:47:04] <LunarJetman> obvs.
[01:47:19] <Donitzo> nice idea, to use the world brittle for code
[01:47:29] <Donitzo> I'm sure it makes sense in some universe
[01:47:51] <LunarJetman> I didn't invent the use of the word brittle however that combination of words to form sentences is probably unique. idiot.
[01:49:01] <Donitzo> No you see, the code people write is probably not abstract enough to be able to handle the extreme amount of refactoring required to optimilly implement my optimizations
[01:49:07] <Donitzo> I can also pull stuff out of my ass
[01:50:40] <LunarJetman> the fact that you are unaware of the concept of brittle code tellms me all I need to know about your level of n00bishness.
[01:51:06] <immibis> Donitzo: yes those are good observations
[01:51:18] <immibis> need I remind you that LunarJetman is currently writing a compiler for every language
[01:51:30] <LunarJetman> \o/
[01:51:31] <immibis> that should adequately indicate his level of programming ability
[01:51:45] <Donitzo> that he has a lot of time on his hands yes
[01:51:53] <Donitzo> writing a compiler is hardly impressive
[01:52:05] <LunarJetman> I am writing a universal compiler
[01:52:10] <immibis> Donitzo: as I said, the fact he's writing a compiler that can compile every language, indicates his level of programming ability ;)
[01:52:11] <LunarJetman> that can compile any programming language
[01:52:19] <Donitzo> ie, you have a lot of time on your hands
[01:52:27] <Donitzo> good for you
[01:52:50] <immibis> people with many years of experience would not attempt such a task without a clear understanding of how it will work ;)
[01:52:53] <immibis> ;)
[01:53:10] <Donitzo> there is nothing wierd about writing compilers for different languages
[01:53:14] <Donitzo> it just takes time :P
[01:53:27] <immibis> that is correct, but this compiler will not need to be modified to support new languages
[01:53:31] <Donitzo> it's like saying you're fluent in many different languages
[01:53:35] <Donitzo> ok, I'm impressed
[01:53:36] <LunarJetman> the fact that immibis is unable to make the mental leap to see how one could write such a compiler in a short amount of time tells us all we need to know about immibis's credibility
[01:53:40] <Donitzo> I don't have time to learn french and german
[01:53:43] <immibis> every language that will ever exist will be supported with no code modifications ;)
[01:54:31] *** perplexity <perplexity!~perplexed@unaffiliated/perplexity> has joined #gamedev
[01:54:42] <LunarJetman> immibis: no code modifications to the compiler, correct.
[01:55:11] <LunarJetman> however if a language requires a new semantic concept then a plugin will require writing
[01:55:25] <Donitzo> just like those text editors with syntax highlighting
[01:55:46] <immibis> and the syntax highlighting never works properly because the editor can't actually parse the language and makes approximations
[01:56:08] <LunarJetman> my compiler can also be used to do syntax highlighting
[01:56:14] <immibis> (it's excusable in C++)
[01:59:23] <LunarJetman> in fact you will be able to associate semantic concepts with a particular CSS style because I do know what the fuck I am doing contrary to what immibis thinks the sarcastic fuck.
[01:59:39] <immibis> knowing what you are doing is not a requirement in programming
[02:00:10] <LunarJetman> indeed
[02:00:27] <LunarJetman> as exemplified by all your projects I bet
[02:01:07] <LunarJetman> did I win? give me a fucking cookie.
[02:07:27] <Prestige> Hello people
[02:13:48] <LunarJetman> hi
[02:17:28] *** LunarJetman2 <LunarJetman2!LunarJetma@5ec16e1a.skybroadband.com> has joined #gamedev
[02:19:04] *** LunarJetman <LunarJetman!LunarJetma@5ec16e1a.skybroadband.com> has quit IRC (Ping timeout: 250 seconds)
[02:53:06] *** mandeep <mandeep!~mandeep@unaffiliated/mandeepb> has joined #gamedev
[03:29:48] *** RoadKillGrill <RoadKillGrill!~RoadKillG@cpe-75-187-139-141.neo.res.rr.com> has joined #gamedev
[03:37:23] *** pulse <pulse!~pulse@unaffiliated/pulse> has quit IRC (Read error: Connection reset by peer)
[03:47:14] <R2robot> Saturday is for Supercross
[03:57:28] *** zalt <zalt!~lambda443@unaffiliated/lambda443> has joined #gamedev
[04:07:26] *** code_zombie <code_zombie!~code_zomb@2605:a601:aa1:da00:7dbc:8e63:f3ea:5976> has quit IRC (Quit: Leaving)
[04:21:29] *** Twipply <Twipply!~Twipply@unaffiliated/twipply> has quit IRC (Quit: Leaving)
[04:26:50] *** aly777 <aly777!~kes777@2601:148:4200:36c7:ac58:2fd2:f90a:20cf> has joined #gamedev
[04:27:30] *** aly777 <aly777!~kes777@2601:148:4200:36c7:ac58:2fd2:f90a:20cf> has quit IRC (Client Quit)
[04:28:37] *** refs <refs!~refs@dslb-178-005-228-022.178.005.pools.vodafone-ip.de> has quit IRC (Quit: refs)
[05:15:42] *** qrestlove <qrestlove!~qrestlove@2601:446:c201:f560:1194:3875:20cc:e764> has joined #gamedev
[05:31:25] *** mandeep <mandeep!~mandeep@unaffiliated/mandeepb> has quit IRC (Remote host closed the connection)
[05:36:08] *** mandeep <mandeep!~mandeep@unaffiliated/mandeepb> has joined #gamedev
[06:01:57] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has joined #gamedev
[06:14:54] *** RoadKillGrill <RoadKillGrill!~RoadKillG@cpe-75-187-139-141.neo.res.rr.com> has quit IRC (Read error: Connection reset by peer)
[06:27:45] *** xen74 <xen74!~xen74@2001:44b8:2e3:9b00:dca:61f5:a364:17af> has joined #gamedev
[06:34:16] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has quit IRC (Ping timeout: 246 seconds)
[06:35:37] *** Tylak <Tylak!~Tylak@074-135-002-092.res.spectrum.com> has quit IRC (Quit: Nettalk6 - www.ntalk.de)
[06:35:53] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has joined #gamedev
[06:49:15] *** [Relic] <[Relic]!~Relic]@2602:306:33a3:6d30:8d50:89d1:79eb:88a> has quit IRC (Quit: Leaving)
[07:40:42] *** Kelzorz <Kelzorz!~Kelzorz@162.104.220.155> has quit IRC (Quit: 0x80)
[07:53:18] *** Dave13h_ <Dave13h_!~Dave@gibson.int13h.com> has joined #gamedev
[07:57:57] *** Spec-Chum <Spec-Chum!sid204588@gateway/web/irccloud.com/x-yddnssrnkdxxdmfs> has quit IRC (*.net *.split)
[07:57:57] *** Dave13h <Dave13h!~Dave@gibson.int13h.com> has quit IRC (*.net *.split)
[07:57:58] *** nohit <nohit!sid334887@gateway/web/irccloud.com/x-oxqjegbhzobgbbhu> has quit IRC (*.net *.split)
[08:34:03] *** gogoprog <gogoprog!~gogoprog@2a02:a03f:4466:7600:3ab1:d4d4:9081:13c3> has joined #gamedev
[08:41:57] *** Beliar <Beliar!~Beliar@2a02:8108:9640:6c42:2dfd:e2cd:b82a:b35d> has joined #gamedev
[08:47:56] *** defk0n <defk0n!8adb8d11@gateway/web/freenode/ip.138.219.141.17> has joined #gamedev
[08:49:18] <defk0n> Hello i have a question, i need to transform from perspective to orthographic, lets say i have a 90 degree fov, do i need to do tan(90 / 2)
[08:49:31] <defk0n> * distance
[08:51:35] <NiniGeo2> Transform from perspective to orthographic?
[08:52:04] <defk0n> yes transform a point from perspective projection to orthographic
[08:52:21] <NiniGeo2> What exactly are you trying to do this for?
[08:52:39] <defk0n> because i can
[08:53:05] <defk0n> or technically because i cant
[08:56:18] *** moldybits <moldybits!~mb@unaffiliated/moldybits> has quit IRC (Ping timeout: 245 seconds)
[08:56:42] <defk0n> can anyone help out?
[08:57:21] *** moldybits <moldybits!~mb@unaffiliated/moldybits> has joined #gamedev
[08:58:24] <NiniGeo2> I'm still confused.
[08:58:41] <NiniGeo2> Perspective and Orthographic are different types of camera transforms.
[08:58:59] <NiniGeo2> What you want to do is transform a point in one into another?
[08:59:09] <defk0n> yes
[08:59:17] <NiniGeo2> Like in screen-space?
[08:59:36] <NiniGeo2> You could project world-space to screenspace using one, and then deproject from screenspace using the other to sort of transform between the two.
[09:00:16] <defk0n> idont know if its the same
[09:00:32] <defk0n> i just want to transform from perspective to ortho
[09:01:35] <defk0n> they are both camera projections
[09:01:38] <defk0n> it should be possible
[09:01:42] <defk0n> to go from one to the other.
[09:02:52] <NiniGeo2> You could generate the perspective transform matrix, and the orthographic transform matrix, and lerp between them?
[09:03:32] <defk0n> i dont have these matrices i only have simple fov and distance
[09:04:03] <NiniGeo2> What is the application you're trying to use this for again?
[09:05:28] <defk0n> its hard to explain
[09:05:54] <NiniGeo2> Well why do you want to do this?
[09:06:53] <myke> NiniGeo2's answer is correct
[09:06:58] <myke> project in one, unproject in the other
[09:07:09] <defk0n> just testing stuff out really
[09:07:13] <defk0n> performance
[09:07:52] <defk0n> myke: can i do that with just fov
[09:07:56] <defk0n> no matrices
[09:08:14] <defk0n> tan(90 / 2) * distance
[09:08:39] <NiniGeo2> Orthographic doesn't really have a FoV though. FoV is a concept for perspective projection only.
[09:09:25] <defk0n> yes thats why i need to neutralize it
[09:10:12] <NiniGeo2> Are you trying to do this for a game?
[09:10:13] *** LunarJetman2 <LunarJetman2!LunarJetma@5ec16e1a.skybroadband.com> has quit IRC (Quit: LunarJetman2)
[09:10:19] <NiniGeo2> Are you doing this for a vertex shader?
[09:10:36] <NiniGeo2> How are your perspective and orthographic projections set up right now?
[09:13:47] <defk0n> lets say i have a screen element in UI, but i want to convert it into world space. i just need a way to negate the FOV aspect of perspective projection
[09:13:48] <defk0n> right
[09:14:21] <defk0n> ortho is just a box view frustum while projection is a pyramid
[09:14:49] <defk0n> i just need distance + tan(fov)
[09:14:53] <defk0n> i think
[09:15:00] <defk0n> but im not 100% sure
[09:15:36] <defk0n> in algabraic terms, not matrices
[09:16:30] <aeth> it's all matrices
[09:16:41] <defk0n> thats what **they** want you to think
[09:16:54] <Prestige> what's up people
[09:16:56] <defk0n> "just use our matrices"
[09:19:31] <aeth> even calculus is matrices, there's matrices that do derivatives
[09:19:41] <defk0n> tan(theta/2) = ymax/d
[09:20:34] <NiniGeo2> Well you don't have to use matrices, that's okay.
[09:20:55] <NiniGeo2> But one thing with projecting from orthographic into perspective is that you have an unknown "depth".
[09:21:04] <defk0n> i know the depth
[09:21:06] <NiniGeo2> Like how far into the perspective frustum are you projecting?
[09:21:17] <NiniGeo2> Oh, like you know the depth from a raycast or 'cuz it's a constant depth?
[09:21:25] <defk0n> its a constant depth
[09:22:33] <NiniGeo2> Okay
[09:23:28] <defk0n> so am i correct?
[09:25:06] <NiniGeo2> Oh on the math?
[09:25:12] <defk0n> yes
[09:47:56]
*** _DB <_DB!6ccefbd9@gateway/web/cgi-irc/kiwiirc.com/ip.108.206.251.217> has quit IRC (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
[09:49:43] <defk0n> ok i think the math is correct
[09:50:03] <NiniGeo2> Try it, see if it works! :)
[09:51:29] <defk0n> well its kinda hard to try, i would need to make a direct2d overlay to draw stuff on screen and see if it looks natural in game
[10:05:45] *** ShadowIce <ShadowIce!~pyoro@unaffiliated/shadowice-x841044> has joined #gamedev
[10:17:45] *** Serpent7776 <Serpent7776!~Serpent77@90-156-31-193.internetia.net.pl> has joined #gamedev
[11:22:50] * zalt had a 'change signs until it works' success moment with a 2d rotation matrix
[11:23:10] <zalt> rotation matrices are bullshit, you can't just copy and paste one from google, they're all wrong
[11:23:37] <zalt> what's correct depends on all of your unjustified choices of conventions
[11:25:33] <zalt> i wonder whether i should've even made that change, previously it was like: a rotation of pi/2 made a horizontal object point downwards, now i have it so that a rotation of pi/2 makes an object point upwards
[11:26:34] <zalt> (assuming the object originally pointed east)
[11:40:52] *** immibis <immibis!~immibis@125-238-72-168-fibre.sparkbb.co.nz> has quit IRC (Ping timeout: 245 seconds)
[11:47:46] <NiniGeo2> Dang that's a lot of wrong ones.
[11:53:58] <zalt> i think it's because of the [top is max y] OR [bottom is max y] situation
[11:54:22] *** adamsky <adamsky!~quassel@178235186241.unknown.vectranet.pl> has joined #gamedev
[12:03:52] *** brainzap <brainzap!~brainzap@217.22.129.78> has joined #gamedev
[12:08:24] *** brainzap <brainzap!~brainzap@217.22.129.78> has quit IRC (Ping timeout: 250 seconds)
[12:08:28] *** togo <togo!~togo@2a01:5c0:e08b:76e1:45:c1e6:1bae:629f> has joined #gamedev
[12:18:18] *** terminx <terminx!~terminx@173-16-252-156.client.mchsi.com> has quit IRC (Read error: Connection reset by peer)
[12:18:49] *** terminx <terminx!~terminx@173-16-252-156.client.mchsi.com> has joined #gamedev
[12:26:05] <aeth> zalt: re "you can't just copy and paste one from google, they're all wrong" that's what books are for
[12:26:40] <aeth> At the very least, you're on one convention if you get all your answers from one book (many of which are online)
[12:31:27] <zalt> i don't think i can stick with one book, what might help me though is trying to understanding the underlying things, with such an intuition conventions will be irrelevant
[12:32:05] *** nohit <nohit!sid334887@gateway/web/irccloud.com/x-uypiyykuhtawtywz> has joined #gamedev
[12:32:25] *** Spec-Chum <Spec-Chum!sid204588@gateway/web/irccloud.com/x-qvezdtweyoptwnru> has joined #gamedev
[12:32:35] <zalt> i see how it's more productive to have one way of thinking about things though
[12:40:40] *** adamsky <adamsky!~quassel@178235186241.unknown.vectranet.pl> has quit IRC (Ping timeout: 255 seconds)
[12:41:20] *** zalt_ <zalt_!~lambda443@unaffiliated/lambda443> has joined #gamedev
[12:43:49] *** zalt <zalt!~lambda443@unaffiliated/lambda443> has quit IRC (Ping timeout: 255 seconds)
[12:45:09] *** pulse <pulse!~pulse@unaffiliated/pulse> has joined #gamedev
[12:46:08] <aeth> Well, an explanation of the underlying things is in all the prose parts of the books that people skip
[12:50:39] *** brainzap <brainzap!~brainzap@217.22.129.78> has joined #gamedev
[12:53:31] *** adamsky <adamsky!~quassel@178235186241.unknown.vectranet.pl> has joined #gamedev
[13:43:41] *** Tylak <Tylak!~Tylak@074-135-002-092.res.spectrum.com> has joined #gamedev
[13:43:42] *** rewind <rewind!~rewind@2a01:e35:87d1:600:1c76:2a10:75b2:acc5> has joined #gamedev
[13:47:49] <zalt_> is there a trick to draw text without spending 50% of the execution time in the text function
[13:49:31] <zalt_> i'm using a hashmap for storing the bitmap out of the ttf font and a cache for kernings, that's still slow as fuck
[13:50:38] <zalt_> oh, also most importantly i'm generating an atlas texture of all the the letters
[13:50:43] *** brainzap <brainzap!~brainzap@217.22.129.78> has quit IRC (Quit: My tummy says it's time to sleep Mr. Bubbles.)
[13:52:22] *** pavonia <pavonia!~user@unaffiliated/siracusa> has left #gamedev
[14:05:09] *** xen74 <xen74!~xen74@2001:44b8:2e3:9b00:dca:61f5:a364:17af> has quit IRC (Read error: Connection reset by peer)
[14:06:42] <pulse> pre-render label textures
[14:14:10] <zalt_> pulse, what do you mean?
[14:14:30] <zalt_> like treat static text differently?
[14:15:47] <pulse> yes. if the bottleneck is rendering individual characters, why not eliminate it
[14:16:17] <pulse> even works for dynamic texts because you can re-render at any point
[14:16:45] <pulse> and 60fps rendering character per character doesn't benefit the user whatsoever
[14:17:01] <zalt_> hmm, good idea, but doing it for dynamic text might pose a resource management problem
[14:17:09] <zalt_> pulse, oh, you're right!
[14:17:15] * zalt_ feels stupid
[14:17:32] <zalt_> i can render to a texture and only render every 15fps or so
[14:17:39] <pulse> basically what i mostly do is just treat individual text labels as i would images
[14:17:57] <pulse> then i abstract it away so i can create and destroy labels at any point
[14:18:01] <pulse> or update them
[14:18:22] <pulse> so if you have some kind of input text where the user is typing in, you can update the texture every time it's needed
[14:18:39] <pulse> and that gets rid of a huge bottleneck where you were rendering character per character wastefully every frame
[14:18:49] <pulse> not that this works in every case, but it should cover about 99% of cases
[14:19:33] <zalt_> i think i'm also going to have a parameter, like STATIC or DYNAMIC
[14:19:50] <pulse> if that allows you to optimize further, sure
[14:25:20] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has quit IRC (Ping timeout: 250 seconds)
[14:36:22] *** Groogy <Groogy!~Groogy@90-227-38-205-no61.tbcn.telia.com> has quit IRC (Read error: Connection reset by peer)
[14:42:24] *** adamsky <adamsky!~quassel@178235186241.unknown.vectranet.pl> has quit IRC (Ping timeout: 246 seconds)
[14:51:23] *** Twipply <Twipply!~Twipply@unaffiliated/twipply> has joined #gamedev
[15:24:20] *** brainzap <brainzap!~brainzap@2a02:168:4614:1:245d:a429:cadc:fad> has joined #gamedev
[15:42:52] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has joined #gamedev
[15:49:55] <Donitzo> god this book never ends
[15:50:24] <Donitzo> it's like, ok let's change the tone for the third time and start a completely new 10 hour chapter
[16:05:44] *** mandeep <mandeep!~mandeep@unaffiliated/mandeepb> has quit IRC (Remote host closed the connection)
[16:10:17] *** brainzap <brainzap!~brainzap@2a02:168:4614:1:245d:a429:cadc:fad> has quit IRC (Quit: My tummy says it's time to sleep Mr. Bubbles.)
[16:11:02] *** brainzap <brainzap!~brainzap@impacthub-colab.panter.biz> has joined #gamedev
[16:11:26] *** [Relic] <[Relic]!~Relic]@2602:306:33a3:6d30:e45d:dccd:8331:d6a0> has joined #gamedev
[16:15:28] *** brainzap <brainzap!~brainzap@impacthub-colab.panter.biz> has quit IRC (Ping timeout: 245 seconds)
[16:44:48] *** adamsky <adamsky!~quassel@178235186241.unknown.vectranet.pl> has joined #gamedev
[16:49:21] *** gogoprog <gogoprog!~gogoprog@2a02:a03f:4466:7600:3ab1:d4d4:9081:13c3> has quit IRC (Read error: Connection reset by peer)
[16:50:22] *** gogoprog <gogoprog!~gogoprog@2a02:a03f:4466:7600:3ab1:d4d4:9081:13c3> has joined #gamedev
[16:57:02] *** LunarJetman <LunarJetman!LunarJetma@5ec16e1a.skybroadband.com> has joined #gamedev
[17:07:35] *** brainzap <brainzap!~brainzap@217.22.129.78> has joined #gamedev
[17:09:04] <brainzap> last few hours before monday, time for a spriiint
[17:41:15] <pulse> man imgur has gone to straight shit
[17:41:25] <pulse> can't even upload an image anymore and link it on mobile
[17:41:36] <pulse> without their obnoxious interface popping up
[17:41:48] <pulse> and even downscaling the image i uploaded on mobile
[17:58:55] *** Kelzorz <Kelzorz!~Kelzorz@162.104.220.155> has joined #gamedev
[18:16:31] *** darkside86 <darkside86!~ismai@97-81-155-106.dhcp.gwnt.ga.charter.com> has quit IRC (Quit: Leaving)
[18:18:51] *** C9Agent <C9Agent!A@124-169-122-208.dyn.iinet.net.au> has joined #gamedev
[18:20:36] *** tanath <tanath!~tanath@unaffiliated/tanath> has quit IRC (Remote host closed the connection)
[18:22:46] *** tanath <tanath!~tanath@unaffiliated/tanath> has joined #gamedev
[18:25:49] *** knops <knops!~yannick@ip-62-143-84-11.hsi01.unitymediagroup.de> has joined #gamedev
[18:27:32] *** RoadKillGrill <RoadKillGrill!~RoadKillG@cpe-75-187-139-141.neo.res.rr.com> has joined #gamedev
[18:47:26] *** toxictype <toxictype!~Akira@77.38.251.38> has joined #gamedev
[18:55:57] *** Groogy <Groogy!~Groogy@90-227-38-205-no61.tbcn.telia.com> has joined #gamedev
[18:59:08] *** knops <knops!~yannick@ip-62-143-84-11.hsi01.unitymediagroup.de> has quit IRC (Quit: Konversation terminated!)
[19:06:14] *** moldybits <moldybits!~mb@unaffiliated/moldybits> has quit IRC (Quit: WeeChat 2.4)
[19:10:09] <Donitzo> what's the problem
[19:12:31] <toxictype> Enemies can push the player downward Donitzo
[19:13:47] <Donitzo> and that's bada?
[19:13:49] <Donitzo> bad*
[19:16:03] <toxictype> Yes.
[19:16:15] <toxictype> They only push the player downards not in any other direction Donitzo
[19:34:43] <Donitzo> not sure why it doesn't work
[19:34:54] <Donitzo> also, you may notice that you don't cover all theoretical collisions
[19:35:01] <Donitzo> if w == h
[19:35:22] <Donitzo> just do else instead of checking both cases individually
[19:37:53] <toxictype> Donitzo that breaks it even more. What should happen if w == h?
[19:38:20] <Donitzo> You understand how it works right?
[19:38:26] <Donitzo> or did you copy the code from someone
[19:38:29] <toxictype> I wrote it.
[19:38:45] <Donitzo> when w == h it means you overlap an object with equal amounts
[19:38:46] <toxictype> If I add an else and go into an enemy from the right side player just moves out of the way and keeps going to the left.
[19:38:47] <Donitzo> choose a direction
[19:39:04] <Donitzo> it should almost never happen anyway
[19:39:25] <Donitzo> but it's bad form to ignore the case
[19:39:58] <toxictype> I'll keep that in mind but how do I prevent the player being pushed (only) downward?
[19:40:39] <Donitzo> you look what the intersection rect contains
[19:40:44] <Donitzo> does it contain negative sizes?
[19:41:36] <toxictype> I'll go ask
[19:42:04] <toxictype> I dunno where to put the breakpoint and don't want to write an if statement
[19:43:00] <Donitzo> just use stdout
[19:44:04] <toxictype> No negative values.
[19:44:51] <toxictype> If the enemies are coming from above they can push the player in other directions
[19:44:57] <toxictype> It's because I sort entities by their y value
[19:45:20] <toxictype> Donitzo pls halp
[19:45:30] <Donitzo> yeah I'm looking
[19:45:37] <toxictype> ty
[19:50:02] <Donitzo> wierd
[19:50:05] <Donitzo> it should work
[19:50:21] <Donitzo> unless
[19:50:24] <toxictype> Interestingly the player can't push objects downwards only objects pushing the player.
[19:50:26] <Donitzo> no
[19:50:29] <toxictype> :0
[19:50:31] <Donitzo> you do check for self intersection
[19:50:37] <toxictype> Ye
[19:51:01] <Donitzo> wait
[19:51:07] <Donitzo> what does the rect contain if there is no collision?
[19:51:13] <Donitzo> oh nvm
[19:51:15] <toxictype> It returns false.
[19:51:17] <Donitzo> it returns a bool
[19:51:20] <toxictype> Yea
[19:51:24] <toxictype> Or NULL
[19:53:07] <Donitzo> also, right now you allow things to push the player, but not the player to push stuff
[19:53:14] <Donitzo> you only move i if j is not player
[19:53:15] <toxictype> :U
[19:53:20] <Donitzo> is player*
[19:53:27] <Donitzo> is not player*
[19:53:33] <toxictype> So how do I fix it
[19:53:48] <Donitzo> id != "player"?
[19:54:03] <toxictype> wait where
[19:54:17] <toxictype> I'm confused I had a coffee
[19:54:50] *** CustersRevenge <CustersRevenge!~cppcon@187.39.238.73> has joined #gamedev
[19:55:38] <Donitzo> if (entities[j]->id == "player") continue;
[19:55:42] <Donitzo> j is the pusher
[19:55:46] <Donitzo> i is pushed
[19:55:52] <Donitzo> if the pusher is player, ignore it
[19:55:53] <toxictype> Right
[19:56:31] <toxictype> if (SDL_IntersectRect(&a, &b, &r) && entities[i]->id != "player")
[19:56:35] <toxictype> Now the player just goes through
[19:56:47] <Donitzo> no, change the line I pasted
[19:57:22] <toxictype> if (entities[i]->id == "player") continue;
[19:57:31] <toxictype> Now the player can push around enemies in any direction. How do I stop this?
[19:58:09] <toxictype> I deleted that line entirely now it works. Thanks!
[19:59:06] <Donitzo> but truly if you want fair pushing you should push both objects
[19:59:17] <toxictype> I don't want pushing yet.
[19:59:31] <Donitzo> now it's just pushing whichever entity comes first
[19:59:46] <toxictype> But nothing gets pushed around it just stops.
[19:59:54] <Donitzo> it's the same thing
[19:59:57] <Donitzo> pushing and stopping
[20:00:08] <toxictype> Works like I wanted it to
[20:00:14] <toxictype> Now how am I gonna include pushing code
[20:00:21] <toxictype> probably continue if i is player and j is pushable.
[20:00:48] *** knops <knops!~yannick@ip-62-143-84-11.hsi01.unitymediagroup.de> has joined #gamedev
[20:04:26] <CustersRevenge> gah! entities
[20:04:39] <toxictype> At least I don't use function pointers anymore.
[20:05:36] * CustersRevenge really doesn't get why ECS got some popularity. it makes the code full of dumb ifs
[20:06:07] <toxictype> Esports Championship Series?
[20:08:15] *** Kelzorz <Kelzorz!~Kelzorz@162.104.220.155> has quit IRC (Quit: 0x80)
[20:09:22] *** Kelzorz <Kelzorz!~Kelzorz@162.104.220.155> has joined #gamedev
[20:11:53] *** darkside86 <darkside86!~ismai@97-81-155-106.dhcp.gwnt.ga.charter.com> has joined #gamedev
[20:17:39]
*** Iolo <Iolo!~iolo@dsl-tkubng22-58c023-38.dhcp.inet.fi> has quit IRC (Quit: ZNC 1.6.6+deb1ubuntu0.1 - http://znc.in)
[20:18:52] *** Iolo <Iolo!~iolo@dsl-tkubng22-58c023-38.dhcp.inet.fi> has joined #gamedev
[20:22:36] <Prestige> Entity component system I think, toxictype
[20:23:22] <toxictype> What if every object inherited from vector2
[20:26:35] <Donitzo> Vector2 should be immutable
[20:26:43] <toxictype> Why?
[20:26:53] <Donitzo> since passing them by reference gets extremely confusing
[20:27:00] <Donitzo> "why is my entity moving by itself?"
[20:27:10] <toxictype> I use pointers.
[20:27:18] <toxictype> References are for Robin
[20:27:25] <toxictype> I'm Batman.
[20:27:32] <toxictype> I'm the Batman of C++
[20:30:01] <CustersRevenge> nah. you are just a bad C++ coder, toxictype
[20:30:09] <toxictype> how dare yo
[20:30:25] <CustersRevenge> pulse, exactly! that ECS crap turns any sane code into a Rube Goldberg Machine!!!
[20:30:26] <Donitzo> naw, but you should try to be a bit more generic
[20:30:45] <Donitzo> try to avoid specific checks in your code
[20:30:51] <Donitzo> like "if this is player do this"
[20:30:58] <pulse> 2-level deep OOP is maximum comfy
[20:31:07] <Donitzo> yeah... kinda
[20:31:15] <Donitzo> maybe 3 at times
[20:31:23] <Donitzo> I've done 5 and I didn't hate it
[20:31:28] <pulse> :S
[20:31:29] <Donitzo> I'm not an addict
[20:32:22] <Donitzo> Entity -> Box -> Humanoid -> Player
[20:32:27] <Donitzo> I think I did something like that some time
[20:32:39] <Donitzo> for a 2d game
[20:33:05] <Donitzo> I don't called it box though
[20:33:15] <Donitzo> it was just a class which handled physical interactions inside the world
[20:33:39] <Donitzo> ie collisions and pushing
[20:33:46] <CustersRevenge> these LEVALS need to be there because of a real REASON
[20:33:52] <CustersRevenge> but everyone loves to abuse inheritance
[20:33:53] <CustersRevenge> dunno why
[20:34:28] <CustersRevenge> pulse, I rarely get three levels. especially in C++
[20:34:34] <pulse> imagine being Oracle and going like
[20:34:40] <pulse> yeah this 115 deep inheritance scheme looks fine
[20:34:50] <toxictype> How should I improve my game?
[20:35:08] <CustersRevenge> if a framework forces me to use their weird inheritance bullshit, I just use the Bridge Design Pattern instead
[20:35:14] <Donitzo> one thing that immidietely fell to mind. Your seperation of solid and entity collision logic
[20:35:18] <Donitzo> why can't solids be entities?
[20:35:30] <toxictype> Because solids are rectangles with a boolean
[20:35:35] <CustersRevenge> lol
[20:35:47] <Donitzo> ok, so at least reuse the collision logic
[20:35:49] <toxictype> My entity class is huge
[20:35:58] <toxictype> Oh yeah didn't think of that.
[20:36:01] <CustersRevenge> toxictype, stop everything. read proper books. start again
[20:36:05] <Donitzo> oh stop
[20:36:09] <Donitzo> he is doing fine
[20:36:12] <CustersRevenge> not at all
[20:36:14] <CustersRevenge> but ok
[20:36:17] <CustersRevenge> not my problem :)
[20:36:22] <toxictype> Yeh come on I spent years working on dead end projects learning how to code.
[20:36:32] <CustersRevenge> you wasted a lot of time
[20:36:36] <Donitzo> bet you're the kind of person who joins a dota 2 match to tell everyone to play more bot games :P
[20:36:37] <toxictype> I want to sell this one.
[20:36:49] <CustersRevenge> if you had proper literature, you would have done it right from the beginninh
[20:36:50] <toxictype> For 4.99 what do I add
[20:37:01] <toxictype> More levels? Okay!
[20:37:23] <toxictype> The next level is gonna be a big dungeon where you have to collect eight chaos rubies to get the item.
[20:37:45] <pulse> there's no proper literature for gamedev
[20:37:53] <CustersRevenge> au contraire
[20:37:55] <pulse> :S
[20:37:56] <Donitzo> I mean, this irc is basically proper literature
[20:37:56] <toxictype> Game programming is 99.2% hacks
[20:38:00] <Donitzo> you can ask people for actual advice
[20:38:00] <pulse> ^ true
[20:38:01] <CustersRevenge> Donitzo, lol
[20:38:05] <Donitzo> than hope to find random tidbits in a book
[20:38:32] <CustersRevenge> well, it is all your loss when you ignore the proper CS theory
[20:38:41] <pulse> CS theory is like
[20:38:43] <pulse> 1% of gamedev
[20:38:45] <Donitzo> haha
[20:38:47] <Donitzo> yeah
[20:38:52] <CustersRevenge> but I blame most teachers. they are terrible with real world examples :-/
[20:39:15] <CustersRevenge> gamedev is 100% applied CS theory
[20:39:17] <Donitzo> bachelors degree in IT, and almost nothing we learned was helpful in gamedev
[20:39:31] <Donitzo> yeah I'm sure learning how to program in assembly is extremely useful in gamedev
[20:39:36] <Donitzo> or how to program a CPU
[20:39:40] <pulse> 1% CS 1% marketing 98% concentrated pain
[20:39:42] <CustersRevenge> Donitzo, wtf you are saying?
[20:40:10] <CustersRevenge> it seems we are talking in different languages
[20:40:14] <Donitzo> or networking basics
[20:40:19] <Donitzo> very useful for gamedev
[20:40:25] <pulse> CS is useful as hell overall
[20:40:38] <toxictype> Is selling my game for 4.20 marketing?
[20:40:47] <pulse> it's just that games are a lot more than just programming and science
[20:41:01] <pulse> toxictype, hmm
[20:41:10] <Donitzo> if anything taking a course in 3d mathematics is one of the most beneficial things for gamedev
[20:41:12] <CustersRevenge> pulse, applied CS theory and ART
[20:41:20] <CustersRevenge> it is the combination of these two sciences
[20:41:25] <pulse> CustersRevenge, there's no guidelines for art though
[20:41:27] <pulse> no, art is not science
[20:41:28] <CustersRevenge> I know
[20:41:31] <CustersRevenge> ofc it is
[20:41:35] <CustersRevenge> human sciences
[20:41:35] <pulse> no
[20:41:36] <pulse> it's not
[20:41:37] <CustersRevenge> o_O
[20:41:40] <pulse> :L
[20:41:55] <pulse> science is the study of repeatable phenomena
[20:42:02] <pulse> art is an expression of imagination
[20:42:09] <pulse> you can teach physics
[20:42:13] <pulse> you can't teach art in the same way
[20:42:14] <CustersRevenge> pulse, feel free to NOT BELIEVE on human sciences, but they do exist :)
[20:42:23] <pulse> they do lol
[20:42:29] <pulse> it's just not proper science :S
[20:42:31] <Donitzo> non-reproducible
[20:42:37] <pulse> non-falsifiable
[20:42:38] <CustersRevenge> you can't mistake exact sciences with human sciences
[20:42:39] <pulse> basically soft science
[20:42:41] <pulse> which is not science
[20:42:42] <CustersRevenge> they are different
[20:43:14] <pulse> what you get from teaching art formally is usually very uninspired and boring shit
[20:43:15] <pulse> :D
[20:43:19] <CustersRevenge> there are studies, there is cognitive background and there are patterns in human sciences
[20:43:25] <pulse> </overgeneralization which happens to be true for some values of true>
[20:43:32] <CustersRevenge> saying that "it does not exist" is just a childish attitude
[20:43:33] <toxictype> What if I added a vingette overlay?
[20:43:42] <pulse> CustersRevenge, no, you don't understand what i'm saying
[20:43:44] <CustersRevenge> "I don't like it, so I will deny it"
[20:43:53] <pulse> art is totally subjective and personal
[20:44:00] <CustersRevenge> and?
[20:44:36] <pulse> that means that someone with 0 education can produce a masterpiece whereas a formal artist will produce boring crap
[20:44:44] <pulse> whereas you can't say the same thing for physics
[20:44:46] <CustersRevenge> don't tell me you are one of those people that believe when someone dumps a piece of poo in a paper, it can also be called art
[20:44:46] <toxictype> I am that person.
[20:44:47] <pulse> does that make sense
[20:44:54] <pulse> CustersRevenge, well
[20:44:55] <pulse> i mean
[20:44:58] <pulse> i wouldn't call it art
[20:45:00] <toxictype> If only games were art as well as science.
[20:45:08] <Donitzo> for crying out loud
[20:45:15] <Donitzo> god damn idiot "what is art" argument
[20:45:20] <CustersRevenge> :)
[20:45:27] <Donitzo> Art is bloody subjective
[20:45:29] <CustersRevenge> art has a definition
[20:45:30] <Donitzo> whine forever about it
[20:46:09] <pulse> it's kinda hard to define art idk
[20:46:10] <CustersRevenge> Donitzo, if you disagree, then it will be my turn of dumping my corny poo in the front of your house and call it art
[20:46:17] <CustersRevenge> :)
[20:46:26] <pulse> isn't that the plot to jackass
[20:46:40] <CustersRevenge> yeah! they are MODERN ARTISTS!!!!!!
[20:46:43] <toxictype> Should I just remake my game in Unity?
[20:46:47] <pulse> toxictype, god no
[20:46:51] <pulse> :D
[20:46:52] <toxictype> why
[20:46:54] <CustersRevenge> toxictype, read books first
[20:46:58] <Donitzo> sure toxictype
[20:47:01] <pulse> toxictype, you'll produce a crappy unity game #1847754163
[20:47:01] <Donitzo> shush CustersRevenge
[20:47:05] <toxictype> :D
[20:47:07] <pulse> stick with the big guns
[20:47:10] <Donitzo> unity is fine if you don't want to spend a 100 years in c++
[20:47:19] <brainzap> YES
[20:47:31] <toxictype> I spent three weeks on my atari game. Is that a lot?
[20:47:47] <pulse> no, i spend three weeks setting up a project in visual studio
[20:47:50] <pulse> you're fine
[20:48:26] <Prestige> 3 weeks is really a short amount of time for game dev
[20:48:31] <CustersRevenge> 3 weeks is really good
[20:48:34] <CustersRevenge> is it complete?
[20:48:39] <brainzap> good work Sir
[20:48:39] <Prestige> ^
[20:48:42] <CustersRevenge> most of my 3 week games were only crap prototypes
[20:48:49] <CustersRevenge> show us your 3 weeks game now
[20:48:55] <Prestige> Spending time on polish is a good idea, I assume the 3 week project isn't polished
[20:49:06] <toxictype> You have to download the video is old
[20:49:16] <toxictype> It's kinda polished.
[20:49:19] <toxictype> I added grass and stuff.
[20:49:22] <toxictype> And rocks.
[20:49:24] <toxictype> No sound though.
[20:49:33] <toxictype> And fixed collisions so enemies can't push you
[20:49:36] <CustersRevenge> toxictype, you took more than 3 weeks
[20:49:43] <CustersRevenge> and the game is far from being complete
[20:49:43] <toxictype> No I didn't
[20:49:46] <toxictype> D:
[20:49:52] <CustersRevenge> don't bs us
[20:49:54] <toxictype> What do I add?
[20:50:00] <CustersRevenge> you are asking questions about this game since january
[20:50:06] <Prestige> animations, sound, polish effects, etc
[20:50:12] <toxictype> I know it's not done I plan to add 7 more game worlds.
[20:50:17] <toxictype> I haven't been here in January.
[20:50:26] <toxictype> It has animations
[20:50:26] <CustersRevenge> nope. you were in ##C++
[20:50:27] <toxictype> sorta
[20:50:29] <CustersRevenge> annoying everyone there
[20:50:30] <toxictype> I forget.
[20:50:41] <Donitzo> you should try using a shadow overlay around borders
[20:50:47] <Donitzo> it would look really good
[20:50:55] <Prestige> Also didn't you only build this for windows?
[20:50:55] <toxictype> It can't be done with SDL
[20:51:03] <toxictype> Yea what about it are you on mac?
[20:51:07] <Prestige> Linux
[20:51:13] <toxictype> sux2bu br0
[20:51:19] <toxictype> I tried linux. It was slow.
[20:51:25] <Prestige> Uh
[20:51:27] <Prestige> Lol
[20:51:29] <Donitzo> anyway, use unity or godot or game maker or whatever, export to webgl
[20:51:34] <Prestige> ^
[20:51:40] <LunarJetman> I will destroy Unity.
[20:51:46] <toxictype> Then my game will suck automatically.
[20:51:48] <Prestige> godot > unity imo
[20:51:54] <brainzap> GODOT!
[20:51:55] <toxictype> What about unreal engine
[20:52:07] <Prestige> I think only godot has actual 2d support
[20:52:09] * CustersRevenge is still waiting for godot
[20:52:09] <Prestige> out of the three
[20:52:15] <Prestige> waiting for what?
[20:52:18] <toxictype> I think I won't.
[20:52:20] <pulse> it's a play
[20:52:25] <toxictype> Those are more confusing to me than C++
[20:52:27] <CustersRevenge> Prestige, nobody gets my joke :(
[20:52:31] <pulse> i did
[20:52:33] <LunarJetman> my framework will do both 2D and 3D great
[20:52:33] <toxictype> C++ I understand it has pointers but wtf is a graph
[20:52:34] <Prestige> oh
[20:52:37] <pulse> but only because i didn't get it last time
[20:52:38] <CustersRevenge> pulse, yeah! I told you before
[20:52:39] <Prestige> I am uncultured soz
[20:52:41] <pulse> :D
[20:52:49] <pulse> LunarJetman, what about 2.5D
[20:52:55] <LunarJetman> that too
[20:52:59] <pulse> neat
[20:53:08] <CustersRevenge> when Godot arrives, LunarJetman will finally have destroyed Qt and Unity
[20:53:11] <Donitzo> a graph is like a tree of objects
[20:53:13] <Prestige> toxictype: do you know any other languages?
[20:53:16] <brainzap> actually my engine uses 2.75D the sprites have shadow
[20:53:18] <toxictype> yes
[20:53:21] <CustersRevenge> both at the same time, with his huge crimson dick!!!
[20:53:21] <toxictype> More or les
[20:53:29] <toxictype> I can code in anything C-like.
[20:53:30] <pulse> we can only offer you 2.73D at this time
[20:53:33] <toxictype> Not fotran tho
[20:53:39] <toxictype> PHP Java Javascrip etc n shit
[20:53:40] <toxictype> yknow
[20:53:41] <toxictype> ayy
[20:53:44] <toxictype> lmao
[20:53:53] <CustersRevenge> wow you must be a genius
[20:53:55] <Prestige> godot has c# support, and I think there are decent-ish game frameworks for javascript
[20:53:58] <toxictype> its ez pz
[20:54:03] <Donitzo> but, when I say shadows I mean, you create 4 sprites with shadows, left right up down, and just add them on top of your tiles where it hits the void
[20:54:05] <Donitzo> looks great
[20:54:06] <toxictype> C# too started with XN
[20:54:07] <toxictype> XNA
[20:54:10] <Donitzo> especially with dithering
[20:54:20] <brainzap> soon godot 3.1 FINAL will be released, and then nothing will stop it
[20:54:27] <toxictype> I could add another tile layer yesn't
[20:54:34] <LunarJetman> I am making a universal compiler that can compile any programming language.
[20:54:43] <toxictype> what are you fucking gay
[20:55:42] <LunarJetman> is who gay?
[20:55:42] <brainzap> manners pls
[20:55:51] <toxictype> sry
[20:56:08] <Prestige> I can't wait for 3.1
[20:56:32] <toxictype> play my game pls
[20:56:33] <brainzap> also in june I think is WWDC again, then we get maybe new game dev tech from apple
[20:57:09] <pulse> i don't want any of that
[20:57:16] <pulse> bring back MS DOS and 320x200
[20:57:19] <Prestige> I can't play your game because you don't support multiple platforms toxictype
[20:57:25] <brainzap> pulse: there is an app for that
[20:57:29] <pulse> doh
[20:57:31] <Prestige> but if you make an updated video I will give you my opinions
[20:57:58] <brainzap> wasn't there a blog post how a father used some old basic to teach his games the joy of deving
[20:58:08] <toxictype> I'll cross compile when it's done.
[20:58:15] <pulse> "teach his games the joy of deving"
[20:58:18] <pulse> what am i reading.jpg
[20:58:30] <brainzap> limited system, with simple syntax = creativity
[20:58:36] <brainzap> and fast results
[20:58:46] <pulse> probably good
[20:58:49] <pulse> but he should have used pascal
[20:59:02] <brainzap> LunarJetman: make a simple 2d render with basic support
[20:59:13] <LunarJetman> brainzap: eh?
[21:00:25] <Donitzo> eh baka-sama!
[21:01:35] <CustersRevenge> lol
[21:01:43] <CustersRevenge> toxictype> what are you fucking gay
[21:01:51] <CustersRevenge> it takes one to know one :D
[21:01:58] <brainzap> what if I leave work and go eat 10 pancakes
[21:02:00] <toxictype> Im only gay for your dick
[21:02:07] <CustersRevenge> yup! nailed it
[21:02:50] <toxictype> <3
[21:03:04] <pulse> gays are homosexual
[21:03:23] <Donitzo> gay people are gay
[21:03:25] <LunarJetman> toxictype: do you think making a universal compiler is gay?
[21:03:40] <toxictype> ye
[21:03:43] <LunarJetman> why?
[21:03:44] <toxictype> its gy slang
[21:03:54] <pulse> universal compiler sounds cool
[21:03:59] <pulse> like something Data would say
[21:05:13] <brainzap> LunarJetman: wouldnt it be more practical to use exisitng work like HAXE or LLVM something
[21:05:21] <LunarJetman> brainzap: NIH.
[21:05:23] <toxictype> What if you just download all the compilers and go like if (error)
[21:06:04] <brainzap> LunarJetman: btw your website is fucked up, please use normal html and html 5 doctype
[21:07:26] <Donitzo> needs indentation
[21:07:48] <brainzap> this is state of the art C++2019
[21:07:54] <CustersRevenge> lol
[21:07:58] <CustersRevenge> even the website is bad
[21:08:10] <Donitzo> naw, seen worse
[21:08:17] <brainzap> you mean my website
[21:08:27] <CustersRevenge> wtf is that image?
[21:08:34] <CustersRevenge> my head just got bad
[21:08:45] <CustersRevenge> this can't be serious
[21:09:13] <LunarJetman> brainzap: my website is not fucked up.
[21:10:09] <LunarJetman> the problem with haxe is you have to write code in haxe. with neos you can use your favourite programming language.
[21:10:54] <brainzap> but arent there too many edge cases, devs will have to learn your flavor of the language
[21:11:07] <Donitzo> think you should add a black solid border to the right and left of your site
[21:11:12] <Donitzo> or maybe left only
[21:11:26] <LunarJetman> brainzap: I said devs can use THEIR favourite programming language (not my favor of it)
[21:11:29] <brainzap> I already experienced this with a JS runtime in Golang. Its better to have a new, dedicated language for the problem, with docs. Instead of shadowing an existing one
[21:11:29] <Donitzo> feels a bit unfocused
[21:12:04] <brainzap> one of the newer fuckups is Dart, which is like "new", but carries over all the JavaScript garbage. Pig with red lipstick
[21:12:19] <Donitzo> but js sure is a sexy pig
[21:12:39] <brainzap> oink!
[21:13:34] <CustersRevenge> feels totally vapor
[21:13:47] <CustersRevenge> Dart is art :D
[21:15:09] <LunarJetman> neos isn't shadowing an existing language; neos can compile ANY language.
[21:15:12] <Prestige> coworker of mine is wanting to convert our backend to go
[21:15:30] <Prestige> not a huge fan so far
[21:15:33] <brainzap> good choice
[21:15:49] <Prestige> of the syntax I mean
[21:16:09] <brainzap> the syntax is only like 25 keywords, whats the problem
[21:16:47] <Prestige> no problems just not a fan of it yet, we started in java, then moved to kotlin, and now are hopping again to go
[21:16:53] <Prestige> in the span of 2.5 weeks
[21:17:00] <Donitzo> sounds good
[21:17:04] <brainzap> what are you building
[21:17:21] <Donitzo> better now than 2 years in
[21:17:22] <Prestige> just a restful backend with spring for.. some application
[21:17:25] <Prestige> true
[21:17:38] <Prestige> we don't know what we're making yet exactly
[21:17:39] <brainzap> how much traffic is to be expected?
[21:17:43] <Prestige> no clue
[21:17:45] <Prestige> :D
[21:18:06] <Prestige> PMs are still talking to people about what we should be making
[21:19:10] <brainzap> in that phase I usually just throw together a MVP with the tech that gives the fastest result, which is like node or python or php
[21:19:11] <Prestige> So we've been setting up our environments, test frameworks, and whatnot
[21:19:35] <Prestige> Yeah we have a little frontend with react enteracting with the backend we've created
[21:19:44] <Prestige> but there's no real content yet, because of that stage
[21:20:05] <LunarJetman> neos could also do what haxe is doing: translate one language to another.
[21:20:28] <CustersRevenge> eww Go
[21:20:30] <CustersRevenge> why?
[21:20:39] <CustersRevenge> kotlin is not bad at all
[21:20:42] <CustersRevenge> I am liking it
[21:20:48] <CustersRevenge> stay with kotlin
[21:20:49] <brainzap> kotlin is java with red lipstick
[21:20:52] *** immibis <immibis!~immibis@125-238-72-168-fibre.sparkbb.co.nz> has joined #gamedev
[21:20:56] <CustersRevenge> at least it seems more honest
[21:21:09] <CustersRevenge> and there are exceptions
[21:21:19] <brainzap> more honest than a language which compiles to assembler? boy you need to do some reading
[21:21:25] <CustersRevenge> hurr durr
[21:21:45] <CustersRevenge> brainzap, you are picking the wrong person to come up with this totally idiotic argument :)
[21:22:39] <brainzap> did I?
[21:23:16] <CustersRevenge> O:)
[21:23:44] <Prestige> I think we only switched from kotlin because the plugins in vscode were buggy
[21:23:50] <Prestige> for kotlin support
[21:24:01] <CustersRevenge> argh
[21:24:09] <CustersRevenge> use Idea then :)
[21:24:33] <CustersRevenge> IntelliJ supports Kotlin natively too
[21:24:42] <Prestige> expensive license, we're wanting to save for server costs etc
[21:25:01] <brainzap> and server hardware
[21:25:05] <CustersRevenge> hmm you're right. devs license requires yearly subs
[21:25:14] <CustersRevenge> but there is a way to get a compound license
[21:25:17] <Prestige> $500/ea for intellij ultimate
[21:25:19] <CustersRevenge> according to your team size
[21:25:22] <Prestige> we going to use AWS
[21:25:24] <CustersRevenge> wat
[21:25:33] <CustersRevenge> I was paying 99
[21:25:36] *** moongazer <moongazer!~moongazer@unaffiliated/moongazer> has quit IRC (Ping timeout: 246 seconds)
[21:25:44] <CustersRevenge> stopped paying because my company had a better offer
[21:26:01] <CustersRevenge> how did it come to 500/ea for you???
[21:26:03] <brainzap> Prestige: please don't fall for the lambda microservice bullshit, just make a simple old school loadbalancer, server, db infrastructure
[21:26:10] <CustersRevenge> lol
[21:26:48] <Prestige> CustersRevenge: It's just listed as %500 for a year license on their site
[21:27:09] <Prestige> We haven't even looked into servers hardly at all yet, but I'll keep it in mind brainzap
[21:28:56] <CustersRevenge> gah gah gah
[21:29:02] <CustersRevenge> 500/ea :(
[21:29:05] <Prestige> $500* woops
[21:29:24] <Prestige> I think that may actually be for the whole organization, I'm unsure
[21:29:32] <CustersRevenge> I would say that
[21:29:32] <Prestige> but even spending the $500 might hurt us down the line
[21:29:35] <CustersRevenge> it is really expensive
[21:29:54] <CustersRevenge> my guess is 500 for an org with 10 devs
[21:29:57] <Prestige> We were given a couple grand and 6 months to make something so eh
[21:30:06] <CustersRevenge> because it hasn't been a while I was paying 99 for myself
[21:30:26] <CustersRevenge> IntelliJ is weird, but it is also really good
[21:30:31] <brainzap> how does a couple grand pay for salary of 2 devs
[21:30:41] <brainzap> are you working from thailand?
[21:30:46] <Prestige> it's project funds, not salary
[21:30:51] <CustersRevenge> they have an exquisite UI and lots of hidden spots. but the tools they offer work very well
[21:30:57] <CustersRevenge> brainzap, lol
[21:31:16] <Prestige> I've completely converted to vscode from intellij actually
[21:31:20] <Prestige> never thought that would happen
[21:31:39] <CustersRevenge> \o/
[21:35:29] *** brainzap <brainzap!~brainzap@217.22.129.78> has quit IRC (Quit: I have updated my privacy policy in preparation for the EU's General Data Protection Regulations (GDPR). To receive a copy of the IRC log pleas click the following link)
[21:36:23] *** RoadKillGrill <RoadKillGrill!~RoadKillG@cpe-75-187-139-141.neo.res.rr.com> has quit IRC (Read error: Connection reset by peer)
[21:39:05] *** defk0n <defk0n!8adb8d11@gateway/web/freenode/ip.138.219.141.17> has quit IRC (Ping timeout: 256 seconds)
[21:43:22] *** immibis <immibis!~immibis@125-238-72-168-fibre.sparkbb.co.nz> has quit IRC (Ping timeout: 255 seconds)
[22:18:46] *** zalt_ <zalt_!~lambda443@unaffiliated/lambda443> has quit IRC (Ping timeout: 268 seconds)
[22:33:39] *** rocky1138 <rocky1138!~rocky1138@kwat.chat> has quit IRC (Quit: Ping timeout (120 seconds))
[22:34:06] *** rocky1138 <rocky1138!~rocky1138@kwat.chat> has joined #gamedev
[22:37:02] *** Serpent7776 <Serpent7776!~Serpent77@90-156-31-193.internetia.net.pl> has quit IRC (Quit: leaving)
[22:37:41] *** gogoprog <gogoprog!~gogoprog@2a02:a03f:4466:7600:3ab1:d4d4:9081:13c3> has quit IRC (Quit: WeeChat 2.4)
[23:13:00] *** cantelope <cantelope!~cantelope@54.sub-174-215-41.myvzw.com> has quit IRC ()
[23:22:57] *** Groogy <Groogy!~Groogy@90-227-38-205-no61.tbcn.telia.com> has quit IRC (Quit: WeeChat 2.4)
[23:38:02] *** ShadowIce <ShadowIce!~pyoro@unaffiliated/shadowice-x841044> has quit IRC (Quit: Leaving)
[23:42:52] *** Beliar <Beliar!~Beliar@2a02:8108:9640:6c42:2dfd:e2cd:b82a:b35d> has quit IRC (Quit: The only real mistake is the one from which we learn nothing)