### Conversion between specular exponent, specular roughness, and specular glossiness

Ever need to convert between specular exponent, roughness, and glossiness? for the Blinn-Phong BRDF, these three values represent the same concept. Specular Exponent is the actual value used to compute the BRDF. Let’s call that variable $e$. The roughness $m$ and glossiness $g$ values are numbers between 0 and 1 and they are additive inverses of each other. In other words

$$g = 1 – m \, ,$$

$$m = 1 – g \, .$$

The exponent is given by

$$e = \frac{2}{m^2} – 2$$

or

$$e = \frac{2}{{(1 – g)}^2} – 2 \, .$$

The BRDF $f_r(\omega_i, \omega_g)$ is

$$f_r(\omega_i, \omega_o) = \pi \frac{F(\omega_i \cdot \omega_h) D(\omega_i) G_2(\omega_i \cdot \omega_g, \omega_o \cdot \omega_g)}{4 (\omega_i \cdot \omega_g) (\omega_o \cdot \omega_g)}$$

where Blinn-Phong $D(\omega_i)$ is given by

$$D_{\mathrm{Blinn-Phong}}(\omega_i, \omega_h, e) = \frac{e+2}{2\pi} (\omega_i \cdot \omega_h)^e$$

and the resulting specular illumination is given by
$$\mathbf{L}_o = f_r(\omega_i, \omega_o) \mathbf{L}_i (\omega_i) \mathbf{V}_i (\omega_i) (\omega_g \cdot \omega_i) \, .$$

### Commodore VIC 20 NTSC and PAL colour/color palettes

I’m posting this mostly so I can look at the colors any time I want.

NTSC

PAL

### 1hgj 102: Eats Shoots & Leaves (to the left)

The theme to this past #OneHourGameJam was to make a game based to the object of the left. My main goal was to make a game where a player can fire a projectile towards an enemy that is pursuing the player. Halfway through as I was making a sprite for a spaceship, the idea of a panda seemed appealing. So I made the game with a panda who can only fire in the left direction.

https://www.mfactorgames.com/games/1hgj_102

### The Lost Button (One Hour Game Jam 101)

A man has ten buttons. When one button gets lost, he starts his quest to find it. To play, simply click the button. To hear the music, turn up the volume.

To play The Last Button, please go to the following link. To see other games from One Hour Game Jam 101, go to www.onehourgamejam.com.

### One Hour Game Jam #101

Last blog post, I mentioned One Hour Game Jam which happens every Saturday. So this week, I’m going to jump in and make my first entry since LD29 a few years ago. I’ll probably dust off the old LD29 Manifold code and get ready for the compo.

I have already been practicing making music in 10 minutes or less. Several times this week, the composing bug hit me and I’m confident of putting something together in 15 minutes. But either workflow has something to do with it or being distracted by sound design is.

I have recently taken a sampling approach to this problem. Ableton Live has been the tool of choice lately and recording clips and then sequencing them is very time effective. It is very important to decide what core set of sounds will be needed so that the note entry takes up most of the time. Using an APC40mkii is then very easy to record the sequence of clips using its scene launch capability.

For this weekend, the computer will be set up just for that. The hardware synthesizers will be configured and ready to go and all the tracks will be set to record their respective sounds. The mastering track will be set so exporting the master audio is streamlined.

It’ll be exciting to see what this weekends compo will bring out musically. Can’t wait… In the meantime, warming up to the 21 day challenge, lets dust off the game engine.

### 21 Day Challenge

I have a book by Andre Lamothe called Teach Yourself Game Programming in 21 Days and so I am going to build a game development library in TypeScript for the web. One motivation is that I just found out about the #1hgj One Hour Game Jam that happens every Saturday and that would be lots of fun!

### Hello, world

Well, I decided to restart the website. First because it would be slightly cheaper to run, second because I was interested in rebooting this enterprise, like in the way you do a fresh install of Windows.

So what will be different? Well, I think it will be focused a bit more focused and concentrated on what I’m working on. I’d like at some point to do more game and graphics themed posts. Before, I’d stick everything about anything here. So, that’ll be different.

Well, that’s all for this first post.

Have a great day! =^D