# GDC16 – Day 1

It’s Math Day!!! The first two days of the Game Developers Conference is always given to specialty tracks and summits. For the past twelve years, there has been a Math for Game Programmers summit on Monday and Physics for Game Programmers on Tuesday. They’ve combined the two into a one-day summit, with the majority of talks being focused on the mathematics, but often with the physics of the game play in mind. As with any conference, some of the talks are huge hits, some are misses, some are good talks but not directly pertinent to your work or interests. This was the case on Monday as well. Fortunately, there were far more hits than misses. On the balance, it was a fantastic summit.

First up was J. Kyle Pittman (@piratehearts) to discuss jump physics. In our course, Math and Physics for Game Programmers, we teach students the basics of uniformly accelerated motion and the Forward Euler Method for numerical integration. When doing this, we certainly talk about free-fall motion and the kinematics of a jump, but Mr. Pittman made some great arguments for why doing jumps physically correctly could often be incorrect for good game play. Often, the acceleration due to gravity, $g$, is preset to a given value, often 9.8 m/s2 downward, and the dynamics of a jump are then determined by the vertical velocity, $v_y$, of the jump. This can lead to, although realistic, jumps that feel too floaty or too heavy, and often jump physics that do not match the necessary trajectories demanded by the level design. Rather than pre-determining the value of $g$, Mr. Pittman suggests allowing it to be determined by the constraints of the level design. If a gap distance and maximum height are known, the value of $g$ and $v_y$ can be calculated so that it is possible for the character to complete the jump.

$g = - \frac {2 h} {t_h}$
$v_y = \frac {2 h v_x} {x_h}$

where $h$ is the maximum height of the jump, $t_h$ is the time to reach the maximum height, $v_x$ is the maximum horizontal speed of the player’s character, and $x_h$ is the horizontal distance covered to the reach the maximum height. Combining these yields a value for the acceleration due to gravity that relies solely on the level design parameters and ensures that a jump is makeable by a player.

$g = - \frac {2 h {v_x}^2} { {x_h}^2}$

Groovy!

The other technique Mr. Pittman explained was using a different value for gravity for ascent versus decent. Mario’s jump physics included increasing the acceleration due to gravity by a factor of three once the jump reached it’s maximum height. This, of course, is physically inaccurate, but in developing a game, you’re goal is to produce good gameplay with believable physics, but simulation-level accurate physics. It’s funny how our brains will sometimes see a simulation that is physically accurate, but believe it’s totally fake.

Next up was Squirrel Eiserloh’s talk on camera shake. I always think of this as the Star Trek effect. When there’s trauma to a player, either from being hit or landing on a surface after a jump or fall, a bit of camera shake can lend realism to the visuals, much in the same way as camera shake was used, perhaps overused, in the original Star Trek episodes to indicate trauma to the ship. The big take-away from this talk was to use both rotational and translational shake in 2D environments, but only rotational shake in 3D. If you jitter the translation of a camera, you can easily end up with the camera inside of a wall. In a VR environment, just don’t, unless it is your intent to cause motion sickness and nausea in your players.

Later in the day, Simon Strange discussed finding distances in the training simulator, Strike Group Defense, a serious game designed to train Navy personnel on the best anti-ship missile defense strategies and tactics. Since naval engagements happen over hundreds of miles, the curvature of the earth is significant and must be taken into account. Given this, the game makes use of spherical coordinates to determine distance. Rather than using the complex trigonometry of calculating arc length on a great circle between two points, Mr. Strange opted instead to rotate the world so that the player was at the north pole. This means that the polar angle is a direct measure of the distance between the player and any point on the map, $d = R_{Earth} \phi$. This is brilliant, and something that Prof. Grondahl and I have tried to explain to our students over the years. Invest in a bit of work up front in order to save a lot of work later on. This is exactly what this method does. You invest in a bit of work ahead of time to rotate the player position to the +z-axis. After you do this, calculating distances on the curved surface of the Earth is a simple and, more importantly, computationally cheap calculation.

The last talk that I’ll highlight is from the always brilliant Gino van der Bergen. This year’s talk was on enforcing rotational joint limits in quaternian space. Quaternians are awesome mathematical objects first developed by Hamilton in the late 1800s. In fact, Hamilton was so excited about his recognition of the key to quaternian on his way home from the pub that he etched the basic complex numbers rules into the stonework of a bridge in Dublin. You have to love mathematical graffiti. Mr. van der Bergen did a great job of explaining why and how quaternions eliminate the singularity and degeneracy issues inherent in traditional matrix-based rotation operators.

Keep an eye on the website Essential Math. You can find slides from the Math for Game Programmers summits of previous GDCs, and in time the 2016 slides, including Mr. van der Bergen’s presentation on quaternian space, will be posted for public consumption.

At the end of the day, I took my camera and set out to capture some images around the Powell and Market region. If you’ve ever been in this area of San Francisco, you know there is a significant homeless population. The reasons for persons finding themselves homeless are as various and unique and the people themselves, but one thing that is common among them is their effective invisibility. Of course, people physically see them, but they consistently choose to disregard their presence, treating them as essentially invisible and separate from the rest of the sea of humanity shopping, commuting to and from conferences and work, waiting to ride the cable cars, and doing all the other things we’re used to doing. One such individual, an amputee, was sitting in his wheelchair off to the side of the rest of the buzz of tourists and townies. The look on his face was one of resigned dejection as people walked by with not even a glimmer of recognition that they just passed a fellow human being.

# GDC16 – Day 0

So today was interesting. I’m all set to check my bag and fly out to San Francisco and I find out that my flight is overbooked. …great. The ticket agent asks if I would mind moving to another flight. I’m in the process of rejecting by default as I needed to be here by 1700h PDT. Before I get around to doing that and demanding the seat I purchased, he says, “How about a non-stop that leaves 22 minutes later than your flight, but arrives two hours earlier. …blink… Yup! That will work just fine, thank you. As it happens, it was the flight that the Game Development Program Chair, Prof. Russ Hanna was on as well.

The rest of the trip goes great. Flight in was smooth, BART into town was smooth, got my MUNI pass easy-peasy. The problem started when I got to hotel. Paperwork is such a fun thing. Turns out there was a mishandling of the paperwork between the college and the hotel so the new front desk clerk didn’t think that my room was paid. Great. There are worse places than San Francisco to be homeless for a day. Fortunately, the folk at the Hotel Stratford were amazing and very understanding! They knew that this would work itself out in the morning when the business offices opened, and they did.

What to do while in the Powell and Market area and your stressed out? Eat! Senior Scientist at Fundamental Technologies, Jerry Manweiler, introduced me to a great burger joint on Union Square, the Burger Bar. Wet, stressed, and hungry, That’s where Russ and I went. It’s an amazing place with an amazing view, although I will say the view during the Christmas season when I come here for the American Geophysical Union Fall Meeting is a bit more colourful.

One thing that did go right was registration at GDC. It used to be such a madhouse. They’ve really streamlined the process and have it working very smoothly. Russ and I were able to walk right up, sign in, and grab our badges. We were in and out in less than five minutes. Brilliant! That left time for some photography work. Before wrapping up the day with more food at an Irish-themed deli. I’m a sucker for corned beef sandwiches!

I’m part of a small group of photogs that post weekly photos on a theme in an effort to push each of us outside of our normal comfort zones and force us out of our photographic ruts. Last week’s theme was “Motion,” and what I wanted was a bus or streetcar moving through the steam rising from the storm grates. I picked the wrong side of the street. Although I didn’t get the steam in the shot like I wanted, I did get some panning practice in before racing season. The lens I used was a 28-mm prime thrift-store special. Auto nothing! It forced me to think about and set every aspect of the exposure and the focus. It’s not tack sharp, but by this time it was starting to pour down rain, and I wasn’t keen on sticking around to grab another.

EXIF
Device: Nikon D7000
Lens: Tokina 28mm f/2.8
Focal Length: 28mm
Focus Mode: Manual
AF-Area Mode: Single
Aperture: f/8
Shutter Speed: 1/15s
Exposure Mode: Manual
Exposure Comp.: 0EV
Metering: Matrix
ISO Sensitivity: ISO 100

Tomorrow, the Math for Game Programmers summit begins! All math, all day!

# AGU14 – Day 1

If you jump in muddy puddles, you must wear your boots. Yeah, well, I don’t have boots. What I do have are two pairs of completely soaked socks, a pair of shoes that might dry out by March, and two very cold and tired feet! …I need wellies, or at least galoshes. It drizzled and rained all day long, which made getting from one building of the Moscone Center to another a bit of a miserable experience. Inside the sessions was quite a different matter, though.

There were several good talks about the behaviour of the magnetosphere and observations by the Van Allen Probes, but today the two most interesting talks I attended were about Mars. The first was about ancient lakes and outflows on the eastern portion of Valles Marineris. The presenter showed evidence on how the outflow from Eros Chaos was directed with estimations on the approximate time the area was drained based on the cratering density on the surface. By this time, it’s no surprise that there was abundant liquid water on the surface of Mars in the distant past, but it’s fun to see people starting to evaluate how that surface water flowed across the surface and how long it would have been present.

The other Mars talk I attended had the clickbait-style title, “How to snowboard on Mars”. What the talk was really about was providing an explanation of how numerous small gullies form on the sandy slopes of some ridge lines on Mars. At first glance, these gullies look remarkably like snowboard tracks. So… Aliens? No, dry ice. As the ice sublimates, the freshly formed vapour lifts the slab of ice off the surface slightly and serves as a lubricant allowing the slab to slide down the slope with enough energy to gouge out a furrow in the sandy surface. This phenomenon has been replicated with dry ice in the Mojave Desert. See the article on NASA’s website for more details.

# AGU14 – Day 0

So yeah, this old FORTRAN guy is using a zero-index reference like those snooty C guys. The American Geophysical Union 2014 Fall meeting (AGU14) doesn’t officially start until tomorrow, but registration is open today and there are a couple of mission-specific meetings. The one I’m responsible for attending and engaging in meaningful participation is the Voyager SSG. Five hours of exploring the future direction of our greatest and most productive robotic mission ever. BRING IT!

In the meantime, I continue to work on bringing the Advanced Composition Explorer’s (ACE) Electron Proton Alpha Monitor (EPAM) data production fully up to date. The basic Level 2 rate data are ready for consumption, but more refined Level 3 fluxes and energy spectra are still on their way. Thankfully, the hotel wifi doesn’t block VPN connections. At least I got the pretty pictures (aka color spectrogram plots) up for viewing.

I’ll update this post throughout the day. …more to come!

Evening Update
What a cool day! Five hours of listening to space science lectures doesn’t get most people excited, but wow, there were some very cool things discussed! How much turbulence is there in the Local Interstellar Medium, or even along the heliopause? Is our heliosphere’s tail bifurcated? There were some neck-level questions being asked about the outer reaches of our solar system, and all this leads into the preparation for the 2015 Senior Review. The Voyagers have plenty of hydrazine to last a long time, provided we can keep it from freezing, but the mission-limiting factor is power and money. The power issue centers on the 18 W needed to power the gyros during a fault protection event. The money issue is up to the Senior Review board, but it looks like the Voyager team has a lot of seriously important work ahead of them exploring a region of space that we’ve never seen before, and likely won’t visit again in our lifetimes.

# SooC – Water and Love

I’m WAY behind on this. Right after the Rally in the 100 Acre Wood, my schedule exploded! (vomited more like) I’ve not had much free time since. 🙁 I’m going to try to get caught back up now that the semester is just about at a close and the first two are Week 6 and Week 7’s topics Water and Love.

## Water

I had better hopes for this one than how it turned out. Honestly, I was hoping to catch a water crossing on stage at the rally and use that, but that never happened so I’m stuck with this shot of the creek right beside the Steelville, MO city park where Friday’s Parc Expose was. I should have had a polarizer on the lens. That would have helped cut some of the glare and enhance some of the contrast. I wanted some of the lens flare from the Sun, but I think I got too much.

## Love

Who says roses are out of style? I got this along with 11 others for Tabatha. This is images in front of my upright grand with a off-camera strobe.

More to come soon!

Check out my fellow Project SooC52 photographers.