• Marbling It Up

    Marbling It Up

    ,

    @MarbleItUp has gone public. We will be launching soon on Switch. I wanted to talk a little bit about the game and how it came to be… and share some sweet GIFs (in high framerate black and white for download size reasons). Just over a year ago, Mark Frohnmayer came to me with a proposal – […]

    More…

  • Video Conference Part 4: Making RANS the Ryg way

    Last post, we got our networking stack up and running, figured out how to work around firewalls, and saw how our codec performs over a real network link. This motivated us to revisit our compression schemes, which is what we’ll do in today’s post. We’ll start with some algorithmic improvements to reduce the amount of […]

    More…

  • Video Conference Part 3: Getting Online

    Video Conference Part 3: Getting Online

    Last time we got up close and intimate with the core compression techniques used in the JPEG format, and applied them to our own situation for better compression. We got our data rates low enough that we have a shot at realtime video under ideal network conditions. Now it’s time to actually send data over […]

    More…

  • Video Conference Part 2: Joint Photographic Hell (For Beginners)

    Last time, I got angry at Skype and metaphorically flipped the table by starting to write my own video conference application. We got a skeleton of a chat app and a video codec up, only to find it had a ludicrous 221 megabit bandwidth requirement. We added some simple compression but didn’t get much return from our […]

    More…

  • Video Conference Part 1: These Things Suck

    Video Conference Part 1: These Things Suck

    What I cannot create, I do not understand. – Richard Feynman I do a lot of video chat for work. If it’s not a one on one, it’s pair programming. If it’s not pair programming, it’s a client meeting. I use a lot of Skype and Hangouts. Sometimes they don’t work for unclear reasons. Sometimes […]

    More…

  • Huffman Serialization Techniques

    Networking expert Glenn Fielder’s article on network serialization techniques is a great read. It discusses a number of scenarios including serializing a sparse set of items from an array. This blog post discusses Glenn’s implementation of sparse array serialization and my thoughts on it. To be sure, Glenn’s code has the virtue of simplicity, and the concepts I’m going to discuss are more […]

    More…

  • Fundamentally F$#ed Up Projects

    Fundamentally F$#ed Up Projects

    The nature of most game dev projects I have been involved in is that they are fundamentally f#$ed up in at least a few key ways… — bengarney (@bengarney) October 28, 2015 The trick as a technical contributor is not obsessing over badness and locking in technical wins that let the project fix itself later […]

    More…

  • Putting Money on the Screen

    Putting Money on the Screen

    Jeff Tunnell is an awesome producer (among his other talents), and I’ve learned a lot from working with him. One of his frequent words of guidance while wearing his producer hat? “Put the money on the screen.” There are a lot of ways to prioritize building software. What feature/change do you tackle first? Depending on […]

    More…

  • Code Caving

    Code Caving

    ,

    Every programmer, no matter your experience, language, or environment, needs to read that post from @bengarney. So much learning to be had! — Luke Lamothe (@AngryMooseZA) August 31, 2015 @bengarney It is a terrific insight into the art of problem solving and debugging that a lot of devs nowadays have no clue how to tackle […]

    More…

  • Some Notes on Mac Configuration

    I was recently advising a fellow TEC-er on setting up their Mac, and they suggested I write it up. These are the tools I use daily for development! Here we go… Alfred is an awesome tool. Like the Windows key on Win8, you can hit a keyboard shortcut (cmd-space by default) and type an app name or […]

    More…