• What are you working on? v67 - March 2017
    3,527 replies, posted
[QUOTE=DrDevil;52887097]Another quick one, only took me one hour. Looks a bit shite though, but I gotta go to bed. [t]https://my.mixtape.moe/rwmwzz.png[/t] [url=https://www.shadertoy.com/view/Xt2cDt]Laserworld[/url][/QUOTE] Doesn't work on my pc :thinking:
[QUOTE=Karmah;52887656]Doesn't work on my pc :thinking:[/QUOTE] Interesting, works well on my phone.
[QUOTE=Karmah;52887656]Doesn't work on my pc :thinking:[/QUOTE] Same, i get this [img]https://i.imgur.com/5s2Cub3.png[/img]
What GPUs are you rocking? Do you have up to date drivers?
Gtx1070, updated drivers. The screen was just black
Same - but I got an old gts 250
What the fuck, maybe your WebGL version is too old...? texelFetch apparently wasn't available in earlier versions of WebGL. [editline]14th November 2017[/editline] [QUOTE=Karmah;52889426]Gtx1070, updated drivers. The screen was just black[/QUOTE] Could you try again? I replaced texelFetch with a simple texture call.
[QUOTE=DrDevil;52889709]What the fuck, maybe your WebGL version is too old...? texelFetch apparently wasn't available in earlier versions of WebGL. [editline]14th November 2017[/editline] Could you try again? I replaced texelFetch with a simple texture call.[/QUOTE] God webgl is a pain. Khronos is apparently working on a Vulkan web/light version, and I really hope it is to WebGL what Vulkan is to OpenGL. Are all the people having errors using Nvidia hardware? In other news, I'm refactoring a class today with a grand total of 177 member variables
[QUOTE=paindoc;52889774]God webgl is a pain. Khronos is apparently working on a Vulkan web/light version, and I really hope it is to WebGL what Vulkan is to OpenGL. Are all the people having errors using Nvidia hardware? In other news, I'm refactoring a class today with a grand total of 177 member variables[/QUOTE] Well, I have a GTX660Ti and it works perfectly for me. Maybe my GPU is blessed or maybe it's because I run linux... I don't know. [editline]14th November 2017[/editline] Personally I'm a bit torn on Vulkan. It seems like you need a massive amount of code just to get one silly triangle onto the screen.
Yeah man, you should see the code to get 2 triangles on the screen, crazy!
[QUOTE=DrDevil;52889847]Well, I have a GTX660Ti and it works perfectly for me. Maybe my GPU is blessed or maybe it's because I run linux... I don't know. [editline]14th November 2017[/editline] Personally I'm a bit torn on Vulkan. It seems like you need a massive amount of code just to get one silly triangle onto the screen.[/QUOTE] You're basically taking over a lot of responsibility that used to be in the driver for OpenGL. EDIT: Also, your shadertoy runs fine on my desktop as well (AMD 290 series).
[QUOTE=DrDevil;52889709]What the fuck, maybe your WebGL version is too old...? texelFetch apparently wasn't available in earlier versions of WebGL. [editline]14th November 2017[/editline] Could you try again? I replaced texelFetch with a simple texture call.[/QUOTE] That fixed it.
[QUOTE=Karmah;52890053]That fixed it.[/QUOTE] Weeeeird... but this one worked on your machine? [url]https://www.shadertoy.com/view/ltSyDc[/url] It also uses texelFetch
[QUOTE=DrDevil;52889847]Well, I have a GTX660Ti and it works perfectly for me. Maybe my GPU is blessed or maybe it's because I run linux... I don't know. [editline]14th November 2017[/editline] Personally I'm a bit torn on Vulkan. It seems like you need a massive amount of code just to get one silly triangle onto the screen.[/QUOTE] Vulkan has a lot of boiler plate code, yes, but unlike OpenGL nearly everything about Vulkan is [I]easily[/I] abstracted away and wrapped with RAII stuff (or not, where appropriate, as in device memory and limited resources). Compare the Sascha-Williams [URL="https://github.com/SaschaWillems/Vulkan/blob/master/base/VulkanTexture.hpp"]Vulkan example code for setting up textures[/URL], to the [URL="https://github.com/fuchstraumer/VulpesRender/blob/master/include/resource/Texture.hpp"]texture class I arrived at[/URL] after 3-4 months of using Vulkan. Lots of the boilerplate and redundant code is easily identified and pulled into it's own methods, and the lack of state in the API is just so nice once you get used to it. That and multithreading is easier, recording commands is a lot nicer and more explicit, push constants are awesome, subpasses are awesome, SPIR-V and shaders are easier than OpenGL shaders, and the whole API is in a very "clean" state that leaves it feeling lightweight and generally pleasurable to use (vs wrestling OpenGL versions and extensions). It's not for everybody, but I think it'll begin seeing a lot more use. More and more games are using it, and more and more resources + projects are starting to appear showing how to use it. I enjoy it loads, and I have no plans to return to OpenGL so long as I shall live tbh [editline]edited[/editline] Are there any good places to ask for code reviews on larger codebases? I don't get any code reviews to speak of at work, so I'm mostly relying on reading as much as I can on how to code better and trying to always improve my own code. I'd like to get a review on something like VulpesRender though, for the sake of learning more from other devs and so I can have the chance to improve that codebase even more.
[QUOTE=paindoc;52890099]Vulkan has a lot of boiler plate code, yes, but unlike OpenGL nearly everything about Vulkan is [I]easily[/I] abstracted away and wrapped with RAII stuff (or not, where appropriate, as in device memory and limited resources). Compare the Sascha-Williams [URL="https://github.com/SaschaWillems/Vulkan/blob/master/base/VulkanTexture.hpp"]Vulkan example code for setting up textures[/URL], to the [URL="https://github.com/fuchstraumer/VulpesRender/blob/master/include/resource/Texture.hpp"]texture class I arrived at[/URL] after 3-4 months of using Vulkan. Lots of the boilerplate and redundant code is easily identified and pulled into it's own methods, and the lack of state in the API is just so nice once you get used to it. That and multithreading is easier, recording commands is a lot nicer and more explicit, push constants are awesome, subpasses are awesome, SPIR-V and shaders are easier than OpenGL shaders, and the whole API is in a very "clean" state that leaves it feeling lightweight and generally pleasurable to use (vs wrestling OpenGL versions and extensions). It's not for everybody, but I think it'll begin seeing a lot more use. More and more games are using it, and more and more resources + projects are starting to appear showing how to use it. I enjoy it loads, and I have no plans to return to OpenGL so long as I shall live tbh [/QUOTE] Yes, using Vulkan over OpenGL/DirectX is absolutely the right thing to do when making engines/games. But I just want to make silly stuff with GLSL, so all I need is a way to draw two triangles and apply a shader to them with the least amount of boilerplate code, which is why I will stick to OpenGL for now and probably a long time.
[QUOTE=DrDevil;52890091]Weeeeird... but this one worked on your machine? [url]https://www.shadertoy.com/view/ltSyDc[/url] It also uses texelFetch[/QUOTE] Nope [t]https://i.imgur.com/kwM8PNP.png[/t]
[QUOTE=Karmah;52890136]Nope [t]https://i.imgur.com/kwM8PNP.png[/t][/QUOTE] Hmmm... is your chrome up to date? That's the only thing I can think of right now.
[QUOTE=DrDevil;52890147]Hmmm... is your chrome up to date? That's the only thing I can think of right now.[/QUOTE] Yep, version 62.0.3202.94 (64-bit)
For a few hours I couldn't figure out why the vertices shared between 2 bones wouldn't be correctly transformed. No matter how many adjustments I made the joints would be all fucked. Like so: [img_thumb]https://i.imgur.com/o7hoDIu.png[/img_thumb] Then I realized why.... The GPU was expecting "Index, Index, Weight, Weight", but I was sending "Index, Weight, Index, Weight" :goodjob: So now it works: [img_thumb]https://i.imgur.com/6wg0q6O.png[/img_thumb] Does anyone know where I can get a fully rigged and animated mesh I could experiment with?
[QUOTE=DrDevil;52890132]Yes, using Vulkan over OpenGL/DirectX is absolutely the right thing to do when making engines/games. But I just want to make silly stuff with GLSL, so all I need is a way to draw two triangles and apply a shader to them with the least amount of boilerplate code, which is why I will stick to OpenGL for now and probably a long time.[/QUOTE] Any sufficiently complicated (read: high performing) OpenGL engine is gonna port almost 1:1 to Vulkan anyways, aside from the pipeline state objects. [editline]15th November 2017[/editline] There's [i]one[/i] fast path, and it's the set of OpenGL calls that are basically directly equivalent to what you would do in Vulkan (sans command lists, sorta; if you went full AZDO you'd essentially be emulating it with indirect draws).
[QUOTE=Zyx;52890328]For a few hours I couldn't figure out why the vertices shared between 2 bones wouldn't be correctly transformed. No matter how many adjustments I made the joints would be all fucked. Like so: [img_thumb]https://i.imgur.com/o7hoDIu.png[/img_thumb] Then I realized why.... The GPU was expecting "Index, Index, Weight, Weight", but I was sending "Index, Weight, Index, Weight" :goodjob: So now it works: [img_thumb]https://i.imgur.com/6wg0q6O.png[/img_thumb] Does anyone know where I can get a fully rigged and animated mesh I could experiment with?[/QUOTE] What format? If you support mdl just grab any from any source engine game.
[QUOTE=Karmah;52891530]What format? If you support mdl just grab any from any source engine game.[/QUOTE] While it would be cool, I feel like the mdl format has way too much fluff in it that I won't be using for a very long time. Instead, right now I export to smd files (The source engine format) and then export that to my own easily readable format and use that.
But couldn't you still use one of their assets, and using blender or some other modeling software, convert it into a format you can use or even export it to your own format?
What's a top-down 2D art style that is on the easier side to produce for someone that is artistically challenged? I can't afford an artist atm. I guess low pixel count art?
[QUOTE=reevezy67;52892387]What's a top-down 2D art style that is on the easier side to produce for someone that is artistically challenged? I can't afford an artist atm. I guess low pixel count art?[/QUOTE] Yeah, I'd go for minimalist art with a limited color pallette. You could also try low poly 3d modeling, although that's a bit harder than placing pixels on a grid.
[img]https://my.mixtape.moe/rgnomg.png[/img] [img]https://my.mixtape.moe/vglgjs.png[/img] Dithering is so hilariously easy to implement yet so very powerful!
[QUOTE=DrDevil;52893029][img]https://my.mixtape.moe/rgnomg.png[/img] [img]https://my.mixtape.moe/vglgjs.png[/img] Dithering is so hilariously easy to implement yet so very powerful![/QUOTE] It's such an easy and cheap thing to implement, and it does such a big difference. [img]https://i.imgur.com/HRvoXo4.png[/img]
I did not expect this to work at all... [IMG]https://i.imgur.com/RhdZFI3.png[/IMG]
[vid]https://my.mixtape.moe/oyacxm.webm[/vid] [url=https://www.shadertoy.com/view/XlffRn]Future Floppy[/url] Kind of gave up half way through, I didn't want to spend more time on it.
how the fuck does the following happen: 1. the creation of a chain of inheritance that results in 200+ member variables 2. the calling of derived class functions in a base class constructor using C-style casts on *this to the derived class 3. 1700+ line constructors I feel like all I do is gripe anymore - but jesus christ, it feels like there's so much entirely justified griping to do. Most of my day thus far has been reducing function size (especially those goddamn constructors) and reducing variable count, and both exercises have been a tremendous frustration. And both have been exhausting. One 1000+ line constructor down to 100 lines (still, bad), only about 7 more to go!
Sorry, you need to Log In to post a reply to this thread.