Outracks: Makes some “program CPU and GPU in the same language” thing
Dys4ia: A game about one person’s transgender experience
Kentucky Route Zero: An adventure game with a unique style
Lovers in a Dangerous Spacetime: is a 2-player co-op micro-platformer set inside a pink Death Star locked in battle with hordes of space baddies
Knights of Pen and Paper: Is meta RPG. You play a group of friends playing an RPG
Sandboxr: Print your own figurines
Giga Tokyo Toy Box: A manga about making video games.
140: A platformer synced to music
Intrusion 2: A Contra style 2D game with lots of cool segmented sprite animation
Liquid Sketch: A game using fluids. Not sure how it plays. There are lots of other fluid games but it looks interesting.
Zineth: A skating game. Mostly impressive as it was made an a few months by students
This post is a continuation of a series of posts about WebGL. The first started with fundamentals and the previous was about 3D perspective projection. If you haven’t read those please view them first.
In the last post we had to move the F in front of the frustum because the
makePerspective fucntion expects it sits at the origin (0, 0, 0) and that objects in the frustum are -zNear to -zFar in front of it.
This post is a continuation of a series of posts about WebGL. The first started with fundamentals and the previous was about 3D Basics. If you haven’t read those please view them first.
In the last post we went over how to do 3D but that 3D didn’t have any perspective. It was using what’s called an “orthographic” view which has its uses but it’s generally not what people want when they say “3D”.
Instead we need to add perspective. Just what is perspective? It’s basically the feature that things that are further away appear smaller.
This article is a continuation of WebGL Image Processing. If you haven’t read that I suggest you start there.
Now might be a good time to answer the question, “How do I use 2 more more textures?”
This post is a kind of side topic on a series of posts about WebGL. The first started with fundamentals
I’m writing this because my claim that WebGL is a 2D API and not a 3D API touches a nerve with some people. I’m not sure why they feel threatened or whatever it is that makes them so upset I called WebGL a 2D API.
This is a continuation from WebGL Fundamentals. Before we continue I think we need to discuss at a basic level what WebGL and your GPU actually do. There are basically 2 parts to this GPU thing. The first part processes vertices (or streams of data) into clipspace vertices. The second part draws pixels based on the first part.
This is a continuation from WebGL Fundamentals. WebGL sometimes appears complicated to learn because most lessons go over everything all at once. I’ll try to avoid that where possible and break it down into smaller pieces.
One of things that makes WebGL seem complicated is that you have these 2 tiny functions, a vertex shader and a fragment shader. Those two functions usually run on your GPU which is where all the speed comes from. That’s also why they are written in a custom language, a language that matches what a GPU can do. Those 2 functions need to be compiled and linked. That process is, 99% of the time, the same in every WebGL program.
This might be somewhat of rant but what the hell. Let’s discuss coding style. We each probably have our personal preferences. Tabs, Spaces, 2 spaces, 3 spaces, 4 spaces, tabs set to 4, braces on lines by themselves or not, etc, etc. Until I started working at my present company I’ve never in 25 years worked at a company that had any real official coding style and things worked mostly fine. There might have been some un-official style or informal discussions but mostly people just did their own thing at it worked.
At my present company though they have a STRICT with a capital S style guide. I’m mixed on it. On the one hand it’s nice to agree on a style. On the other hand, I hate Hate HATE some of their decisions.
This post is a continuation of a series of posts about WebGL. The first started with fundamentals and the previous was about 2D matrices. If you haven’t read those please view them first.
In the last post we went over how 2d matrices worked. We talked about translation, rotation, scaling, and even projecting from pixels into clip space can all be done by 1 matrix and some magic matrix math. To do 3D is only a small step from there.
I understand the positive arguments for keeping so many things about iOS closed. Examples: It provides a more consistant user experience. It lets Apple control more of the over all quality. Etc.. I also understand some of the negative arguments for keeping it closed. Apple makes money on the app store and media sales so why would they let a different bookstore, music store or app store in.
But I think there’s a bigger picture argument. It goes something like this