Views: 20,052,015 |
Home
| Forums
| Uploader
| Wiki
| Object databases
| IRC
Rules/FAQ | Memberlist | Calendar | Stats | Online users | Last posts | Search |
04-25-24 02:20 AM |
Guest: |
Main - Posts by Arisotura |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7621/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7622/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7623/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
first one, although it's not really about Java itself
JOGL is a dumb pile of shit compared to OpenTK. one is a cleverly designed wrapper that takes advantage of its language's features, the other is a dumb verbatim wrapper that ends up overcomplicating things. for example, shader compilation code: https://github.com/StapleButter/WhiteholeCS/blob/master/BmdRenderer.cs#L133 vs https://github.com/StapleButter/Whitehole/blob/master/src/whitehole/rendering/BmdRenderer.java#L301 esp. how to get the shader compile log, in C#: string log = GL.GetShaderInfoLog(vertid);
all the complexity of the original OpenGL API is cleverly hidden behind a simple API call that handles everything for you and returns a nice string.
in Java: gl.glGetShaderiv(vertid, GL2.GL_INFO_LOG_LENGTH, sillyarray, 0);
the API sticks to the original OpenGL design. you must first retrieve the length of the log (and use a one-entry array because Java doesn't have pointers). then the log is given to you, but it's a raw char array. you need to convert it to a string, and be sure to catch any exceptions that process could throw. this code is a horrid pile of crap, for something the other API did in one line.int loglength = sillyarray[0]; byte[] _log = new byte[loglength]; gl.glGetShaderInfoLog(vertid, loglength, sillyarray, 0, _log, 0); CharBuffer log; try { log = Charset.forName("ASCII").newDecoder().decode(ByteBuffer.wrap(_log)); } catch (Exception ex) { log = CharBuffer.wrap("lolfail"); } ____________________ NSMBHD - Kafuka - Jul melonDS the most fruity DS emulator there is zafkflzdasd |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7624/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
oh also, let me talk you about the exception handling nightmare
so Java forces you to handle all exceptions. except runtime exceptions, like NullPointerException. and when those happen, all it does is print the message to stdout and continue running. if you have no console attached, you have no idea that something went wrong, all you get is that your program may become weird. atleast C# always lets you know and gives you an opportunity to do the sensible thing -- close the program. Java just hopes you noticed. I had eventually tried to catch all exceptions in Whitehole. the idea was to log the exception stack trace somewhere, inform the user that something went wrong and that they might want to exit the program. you'd think it must be doable, right? ahahahahah. it only worked half the time. the other half, it completely froze the program without giving anything useful. I haven't tried doing that in C#, so can't tell if it would work there. I'm no C# fanboy -- it does have its share of issues, and unless you stick to trivial programs, things quickly degrade once you run on anything that isn't Windows. But Java is bad too. Java also has no unsigned types! every decent programming language has them. ____________________ NSMBHD - Kafuka - Jul melonDS the most fruity DS emulator there is zafkflzdasd |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7625/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7626/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
(post in restricted forum) |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7628/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7629/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
(post in restricted forum) |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7631/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7632/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
I never had the occasion to try a mechanical keyboard. But, to give you an idea:
* regular desktop keyboard: I type well and all, and given the French keyboard layout, the numpad is handy * laptop-style, flat keyboard: I keep missing keypresses. argl. probably not enough key height or feedback or whatever. * Sun keyboard w/ oversized space bar: That one occured at engschool and kept tripping me whenever I wanted to use Alt-Gr. * Touchscreen keyboard: Tried typing on my tablet as if it was a keyboard. The lack of physical feedback or limit between keys is unsettling. So, basically: physical buttons are good. Get your keys as physical as possible. ____________________ NSMBHD - Kafuka - Jul melonDS the most fruity DS emulator there is zafkflzdasd |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7633/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Posted by Bboy Thetdra hey hey, welcome aboard I knew your name sounded familiar ____________________ NSMBHD - Kafuka - Jul melonDS the most fruity DS emulator there is zafkflzdasd |
(post in restricted forum) |
(post in restricted forum) |
(post in restricted forum) |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7637/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
Arisotura |
| ||
Star Mario in this room you have a pile of apple pies Level: 163 Posts: 7638/9019 EXP: 56257762 Next: 229882 Since: 07-03-12 From: in a box Last post: 13 days ago Last view: 18 hours ago |
shows that showing newer comments first doesn't bode too well with reply comments. it's counter-intuitive, you read the original comment then have to go to the bottom of the replies list and start going up to read it in order
regardless, welcome aboard Skek ____________________ NSMBHD - Kafuka - Jul melonDS the most fruity DS emulator there is zafkflzdasd |
(post in restricted forum) |
(post in restricted forum) |
Main - Posts by Arisotura |
Page rendered in 0.083 seconds. (2048KB of memory used) MySQL - queries: 22, rows: 228/228, time: 0.032 seconds. Acmlmboard 2.064 (2018-07-20) © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |