Interpolation and Control System Tricks, Part 1: Signals and Systems

This post is the first in a series on a group of related tricks we can file under the category of “interpolation” or “control systems.” This can seem very abstract, but there’s a reason: it’s applicable in so many different areas, as this first post will attempt to show. In this post, I want to discuss some general principles of signals, systems, and interpolation, and give practical examples of where these things come up in everyday video game programming.


Many of the data we deal with in video games can be viewed as a “signal,” or to use an equivalent term, a “function.” Quite often we deal with signals in the time domain, or more simply, we have some data that changes over time. Here are some examples:

  • The player’s input values. (Mouse movement rates, whether or not keys are depressed at that moment, etc)
  • The player character’s velocity.
  • The health of a character.
  • The visual size of the character’s health meter.
  • The positions and orientations of player characters and other objects in the world.
  • The current lock-on target.
  • Which context-sensitive camera mode is currently active? For example, a close-up up on a taunt, a hint showing a door that opened as a result of the lever you just pulled, an adjustment to zoom to highlight an acrobatic element that can be interacted with, and so forth.
  • The “ideal” camera position, given the current state affairs in the game world: the selected camera mode, character positions, obstacles that must be avoided, etc.
  • The player’s current selection from some menu.
  • The screen-space position oi the visual cursor showing which menu element is highlighted.
  • A target’s position that an AI entity is trying to aim at
  • The authoritative position of an object, received periodically from the game server, when we are a client.
  • The proper position a character should be so that his animation lines up with some other object or character he is participating with.
  • The raw cursor position from the Wiimote.
  • The position of the cursor on the screen.
  • The data we get from Kinect libraries telling us where it thinks the player’s arms and legs are.
  • The actual positions and orientation of the bones used to animate the on-screen representation of the player.
  • …and I’m sure you can think of many more examples.

Continuous and discrete signals

You will notice that some of the examples signals take on values from a continuous domain, such as the positions of characters and other objects in the world, or mouse movement rates. Those are the signals that we store using floating point data types, whether they be 1D scalar values or 2D or 3D vectors. Other signals may only assume values from a discrete set, for example, menu selection, discrete camera modes, lock-on targets, whether or not the ‘W’ key is currently depressed, and so forth. We use bools, ints, and enums for these.

Just because a signal comes from a continuous domain does not mean it is continuous function. For example, a character’s health may be constant and then take a sudden jump up or down if they get shot or pick up a potion, etc. An AI entity may suddenly switch targets, so that even if each individual target moves around in a continuous fashion, the signal representing “the position that the AI wants to be aiming at” may exhibit discontinuities. Characters can warp and spawn. A client depending upon a game server for the authoritative value of some continuous variable is only going to receive that variable in bursts. One of the main reasons to understand control systems theory is to know how best to mask these discontinuities, making a smooth output signal out of a jumpy input one.

Of course, since we are working in a digital computer, in reality all of our signals are not truly continuous in time, because we only know (or care about) its value for particular time values, for example, perhaps at 30 different times per second. But we still consider the underlying signal to be continuous, even if we are only sampling an input signal or updating an output signal once per frame.

Must every signal be a function of time?

All of the examples we’ll look at are time-domain signals, but before moving one, it’s worth mentioning that there are certainly signals from other domains. For example, a visual image can be thought of as a function of the continuous screen space coordinates, defined at any (x,y) coordinates, not just at the pixel “centers.” (We could use raytracing to determine the value.) Practical images are represented as a discrete grid of pixel values (a bitmap); how to best sample the continuous signal to determine the pixel colors is a very important topic, one that can only be fully understood using the tools of signal processing theory. (It is NOT simply the value of the continuous signal at the “center” of the pixel!)


Video games contain lots of code that, when viewed from the standpoint of signal processing theory, is a system. A system is basically any process, function, algorithm — or block of video game code — that takes one or more input signals, and produces one or more output signals. The list of example signals given previously was hopefully highly suggestive, and you already thought of these examples of systems:

  • We typically do not map the player’s movement directly from the input. For example, when the player presses the ‘W’ key to move forward, he doesn’t snap into motion; likewise, when he releases it, he doesn’t instantly stop. There is a some logic that decides how to nicely ramp his velocity in and out. A system is taking the raw input signal of the current status of the `W’ key and mapping it to the actual player velocity.

  • Console controllers are notorious for being “noisy”, if we just scaled the raw value as our velocity, you couldn’t stand still.
  • We might want the chracter’s health bar to visually animate, for an extra level of polish, even if the underlying health value jumps.
  • Camera control is full of control systems. Often, there is one system that takes as input the current character position, lock on target, special interaction, etc, and produces an “ideal” camera position. But this position cannot be used directly, it is extremely jerky. The camera would snap suddenly when you switched lock-on targets. The character movement might need to be “jerky” for gameplay reasons (be able to stop on a dime), but we might want the camera to not have this rigid, mechanical feeling. So another system takes the raw ideal position and smooths it out, to provide the transitions between different modes and smooth out jerky movement.
  • The AI cannot just snap to aim at his desired target. The assassin’s arm, the gun, the sentry turret, or whatever, would snap with infinite velocity; this is not realistic. And if the AI happens to be shooting at you, it probably won’t seem fair or fun, either.
  • We might want the visual highlight over the user’s selection to animate smoothly, rather than just snapping into place.
  • The raw data from the Wiimote and the Kinect camera are noisy. We must filter it or else the pointer and avatar will be jitterly

As you can see, many of these examples can be put into the category of “making things feel right.” Different types of systems will “feel” differently and have different performance characteristics. It’s very helpful to have a library of systems to choose from.

In the next post, I will consider some very special signals that are able to capture common behaviour in signals: they are the impulse, step, ramp, and sinosoid. By analyzing how our system responds to these special signals, we will learn a lot about how our system behaves in general.

This entry was posted in Uncategorized. Bookmark the permalink.

329 Responses to Interpolation and Control System Tricks, Part 1: Signals and Systems

  1. Pingback: Leo trader pro reviewed

  2. Pingback: Atlanta AC Repair

  3. It’s very easy to find out any matter on net as compared to books,
    as I found this piece of writing at this web page.

  4. Hi there, just changed into alert to your weblog through Google,
    and found that it is truly informative. I’m gonna watch out for brussels.
    I’ll appreciate if you proceed this in future. Many other people will
    be benefited from your writing. Cheers!

  5. Why visitors still make use of to read news papers when in this technological
    world everything is accessible on net?

  6. make stuff says:

    Good day! I know this is kinda off topic but I was wondering which blog platform are you using for this website?

    I’m getting tired of WordPress because I’ve had problems with hackers and I’m looking at
    options for another platform. I would be great
    if you could point me in the direction of a good platform.

  7. Hi, i read your blog occasionally and i own a similar
    one and i was just curious if you get a lot of spam feedback?
    If so how do you protect against it, any plugin or anything
    you can suggest? I get so much lately it’s driving me insane so
    any assistance is very much appreciated.

  8. Pingback: Google

  9. Pingback: molybdenum wire

  10. Pingback: dedicated server hosting

  11. Pingback: kitty kennel

  12. Pingback: dabjars

  13. Pingback: chainsaw grinding diamond wheel

  14. Pingback: superior auto institute

  15. Pingback: the wristwatch exchange

  16. Pingback: web series

  17. Pingback: Double Penetration Toy

  18. Pingback: Double Penetration Vibrator

  19. Pingback: free download for pc windows

  20. Pingback: games for laptop download

  21. Pingback: pc app

  22. Pingback: Boudoir

  23. Pingback: superior auto institute

  24. Pingback: games for laptop download

  25. Pingback: free download for windows 8

  26. Pingback: free download for windows 8

  27. Pingback: app for pc

  28. Pingback: sexshop atacado

  29. Pingback: kerala

  30. Pingback: Fixed ROM

  31. Pingback: buy lion kona coffee

  32. Pingback: coffee from kona

  33. Pingback: pure kona coffee beans

  34. Pingback: free download for windows 7

  35. Pingback: apps download for windows 7

  36. Pingback: strapon dildo

  37. Pingback: best clitoris vibrators

  38. Pingback: miniclip 8 ball pool

  39. Pingback: free download for pc

  40. Pingback: dick sleeve

  41. Pingback: menage a trois sex toy

  42. Pingback: Engine

  43. Pingback: apps for pc

  44. Pingback: free full download for windows pc

  45. Pingback: The Rabbit Sex Toy

  46. Pingback: data entry work from home

  47. Pingback: Chaga Pilz

  48. Pingback: nike air jordan

  49. Pingback: air conditioner

  50. Pingback: clitoral stimulator

  51. Pingback: Google

  52. Pingback: mulvadi kona coffee beans

  53. Pingback: true wireless headphones

  54. Pingback: mulvadi pure kona

  55. Pingback: mulvadi pure kona

  56. Pingback: Carica

  57. Pingback: TB0-110 Certification Dumps

  58. Pingback: the rabbit vibrator

  59. Pingback: real online jobs

  60. Pingback: relationship advice

  61. Pingback: sex toys for women

  62. Pingback: earn money from home

  63. Pingback: anal toy

  64. Pingback: νικολας σφηκας

  65. Pingback: Buy ios installs

  66. Pingback: sex toys for couples

  67. Pingback: adult sex toy

  68. Pingback: free cash

  69. Pingback: foods to eat to lose weigh

  70. Pingback: skinny on pictures

  71. Pingback: desinfectionpunaisedelit

  72. Pingback: best anal toys

  73. Pingback: wet wabbit review

  74. Pingback: Male Masturbators

  75. Pingback: thrusting silicone vibrator

  76. Pingback: massager

  77. Pingback: dr. dickmann

  78. Pingback: female vibrator

  79. Pingback: male vacuum pump

  80. Pingback: how to have orgasm

  81. Pingback: gay assistant

  82. Pingback: szybki kredyt

  83. Pingback: photographer

  84. Pingback: e liquid

  85. Pingback: Download C2090-313 Certification Dumps

  86. Pingback: healthy food 10036

  87. Pingback: forex signal list pro

  88. Pingback: Search Engine

  89. Pingback: amazon product rankings

  90. Pingback: Logitech G810 Orion Spectrum

  91. Pingback: audio spionaj

  92. Pingback: buy youtube views and likes

  93. Pingback: persian setar

  94. Pingback: CAT-100 Certification Exam Questions and Answers

  95. Pingback: clasicados online

  96. Pingback: pc apps for windows 10

  97. Pingback: cheapest smm panel

  98. Pingback: adult sex toy

  99. Pingback: vibrator rabbit

  100. Pingback: sex kit

  101. Pingback: rabbit vibrator review

  102. Pingback: wabbit dildo

  103. Pingback: Amanda Hawkins

  104. Pingback: adam and eve haul

  105. Pingback: anal toy

  106. 97Jillian says:

    I must say you have hi quality posts here. Your
    blog can go viral. You need initial boost only.
    How to get it? Search for: Miftolo’s tools go viral

  107. Pingback: buy dildo online

  108. Pingback: Buy Adipex

  109. cash advance says:

    Despite the fact that it may not be proposed that you take an auto title advance, when the circumstance calls for it and you don’t have another choice, you can even now put it all on the line.

  110. Pingback: sex talk

  111. Pingback: recover files from sd card

  112. Pingback: penis ring vibrator

  113. Pingback: bedroom

  114. Pingback: Thrusting Anal Vibe

  115. Pingback: Freshest food

  116. Be that as it may, you ought to take heart on the off chance that you live in those states, or on the off chance that you have had everything you can take of difficult loan costs.

  117. Pingback: Phentermine

  118. There are positives and negatives to any money related arrangement. An automobile title advance has a lot of negatives, however the solid positive keeps clients returning when funds are stuck in an unfortunate situation.

  119. Pingback: Arduino

  120. Pingback: 韓国エスコートアガシ

  121. Pingback: see here

  122. Pingback: apparel shopping bag

  123. Pingback: pc app for windows 7

  124. The first for personality confirmation steps are intended to ensure the credit organization and the borrower from trick craftsmen. Some potential payday advance clients feel the confirmation procedure is meddlesome, however it is for their advantage.

  125. Pingback: apps for pc download

  126. Pingback: top 5 world travel destinations

  127. Pingback: travel guide mumbai

  128. Money will be accessible to you specifically in your check represent utilize. When you are tie in most exceedingly awful circumstance of monetary emergency and you don’t have any wellspring of wage to move from this circumstance, apply for crisis money today.

  129. Pingback: heat travels through empty space by

  130. Pingback: traveling 4 corners line dance

  131. Pingback: 福井脱毛

  132. Pingback: business travel tips

  133. Pingback: 福井脱毛

  134. Pingback: China Import

  135. Pingback: traveling to cuba safe

  136. Pingback: 福井脱毛

  137. Pingback: adam and eve sex toy shop

  138. Pingback: piano classes

  139. Pingback: travel

  140. Pingback: travel places in hyderabad

  141. Pingback: travel agencies london

  142. Pingback: airzone travels salem contact number

  143. Pingback: g fashion studio

  144. Pingback: fashion world vosloorus

  145. Pingback: mrs d fashionable maven

  146. Pingback: qweekend fashion

  147. Are you looking to cash into a checking account, the total amount usually cannot be immediately accessed; there may be a waiting period for the check to clear? We are the companyproviding you the best services about check cashing within a short period. In USA you may find us everywhere, every city and 24/7. We really love to serve you the best things with 100% satisfactions. It is really hard to say when exactly need to cash your check. Sometimes it may very difficult to cash if it is not official hours. That’s why we feel you much and started 24 hour check cashing services. It is very easy to finding us as we are at your city or nearest places. Just remember us and we will cash your check very short period with a very low cost.

  148. Pingback: a brand new world

  149. Pingback: women's lifestyle facebook

  150. Pingback: Cheap Country Soccer Jerseys

  151. Pingback: beat store

  152. In USA you will notice North American nation everyplace, each town and 24/7. we actually like to serve you the simplest things with 100 percent satisfactions.

  153. Pingback: l k bennett ladies fashion

  154. Pingback: t dresses 1940

  155. Pingback: 龜岩許浚dvd

  156. Pingback: deep v maxi dresses

  157. Pingback: crystal jewelry reno

  158. Pingback: home improvement industry trends

  159. Pingback: coin shop

  160. Pingback: best kona

  161. Pingback: pure kona

  162. Pingback: e home international inc

  163. Pingback: Permitting

  164. Pingback: Light expertise SanLiBang

  165. Pingback: empire 1 home improvements

  166. Pingback: house beautiful 1959

  167. Pingback: adam and eve sex toys shop

  168. Pingback: motu and patlu games

  169. Pingback: real estate daytona

  170. Pingback: Cellphone repair

  171. Pingback: Water plumber

  172. Pingback: home garden t v

  173. Pingback: nSpire Network Signup

  174. Pingback: kerala home design 900 sq feet

  175. Pingback: cool

  176. Pingback: Decoden

  177. Pingback: 20 x 40 home design

  178. Pingback: home decor 1967

  179. Pingback: decorating ideas recycled materials

  180. We really love to serve you the best things with 100% satisfactions. It is really hard to say when exactly need to cash your check. Sometimes it may very difficult to cash if it is not official hours.

  181. Pingback: size 1 wedding shoes

  182. Pingback: how to talk about std

  183. Pingback: dating american men

  184. Pingback: whips for sale

  185. it’s terribly simple to finding United States as we tend to square measure at your town or nearest places. simply bear in mind United States and that we can money your check terribly short amount with a really low price

  186. Pingback: Best Glass Dildo

  187. Pingback: Sex Toy Haul

  188. Pingback: hard rock punta cana wedding 2015

  189. Pingback: cardio instructor

  190. Pingback: pure kona

  191. Pingback: best kona

  192. Pingback: TensorFlow

  193. Pingback: wedding invitations language

  194. Pingback: tooth extraction

  195. Pingback: fishing redding

  196. Pingback: guest house

  197. Pingback: Best Strap On Dildo

  198. Pingback: wedding dress york pa

  199. Pingback: First Birthday wishes

  200. Pingback: Short birthday wishes

  201. Pingback: Adult Toys Online

  202. We the company founded in 1977 and started franchising since 1992, United Check Cashing and landed as a check casher industry in USA. We are covering most of the cities and still giving you the best services within very short period with top notch satisfaction. We can trace us 24/7 and you are always welcome.

  203. Pingback: Buy Craft Beer Online

  204. Pingback: sims 3 wedding jewelry

  205. Pingback: wedding rings chicago

  206. Pingback: wedding cake pics

  207. Pingback: Soldier deployment boots

  208. Pingback: wedding diet tips

  209. Pingback: zimbabwean wedding budget

  210. Pingback: 50% of on Empty capsules!

  211. Pingback: gspot toy

  212. Pingback: Enterprise Web Hosting

  213. Pingback: events in santa barbara

  214. Pingback: Wet Seal brand

  215. Pingback: drug treatment and alcoholism

  216. Pingback: women

  217. Pingback: black and white jordans

  218. Pingback: cock ring

  219. Pingback: wedding bouquet glass dome

  220. Pingback: best work from home opportunities

  221. Pingback: y learning gems

  222. Pingback: buy kona

  223. Pingback: best kona

  224. Pingback: m.e.g (e-learning)

  225. Pingback: every day deals washington

  226. Pingback: dual sex toys

  227. Pingback: special education assistant

  228. Pingback: online franchise

  229. Pingback: Double Sided Dildo

  230. Pingback: dependência química

  231. Pingback: Herbal Oils

  232. Pingback: Baojun

  233. Pingback: sales leads

  234. Pingback: barcode kaufen

  235. Pingback: robert

  236. Pingback: Internet Marketing

  237. Pingback: girnede satılık ev fiyatları

  238. Pingback: easy murphy bed

  239. Pingback: magic

  240. Pingback: vintage collectibles

  241. Pingback: old postcards

  242. Pingback: sex toys for couples

  243. Pingback: g spot vibrator

  244. Pingback: sex toys cleaner

  245. Pingback: sex toy butterfly

  246. Pingback: adam & eve sex toys

  247. Pingback: male sex toys

  248. JasminSnoddy says:

    I see your website needs some unique articles.
    Writing manually is time consuming, but there
    is solution for this hard task. Just search for: Miftolo’s tools rewriter

  249. Pingback: clit sex toys

  250. Pingback: ride sex toys

  251. Pingback: surfboard rentals

  252. Pingback: 2H2D

  253. Pingback: ean code

  254. Pingback: vibrating dildo

  255. Pingback: RMUTT Thailand

  256. Pingback: 100% pure kona

  257. Pingback: coffee, 100% kona

  258. Pingback: coffee, 100% kona

  259. Pingback: clínica de recuperação

  260. Pingback: download tama tube

  261. Pingback: Fashion

  262. Pingback: womens sex toy

  263. Pingback: sex toys

  264. Pingback: evolved vibrator

  265. Pingback: realistic vibrator

  266. Pingback: triple vibrator

  267. Pingback: nipple foreplay

  268. Pingback: free download for windows 8

  269. Pingback: refinish basement Atlanta

  270. Pingback: topbet star

  271. Pingback: silicone containers

  272. Pingback: full size cotton sheets

  273. Pingback: rampant vibrator

  274. This article is on 16 spot in google’s search results, if you want more traffic, you should build more backlinks to your website, there is one trick to get free,
    hidden backlinks from authority forums, search in google:
    how to get hidden backlinks from forums

  275. Pingback: Venture Point Network

  276. Pingback: jack rabbit vibrator

  277. Pingback: vibe

  278. Pingback: bangal ka jadu

  279. Pingback: the sylvers

  280. Pingback: butt plug

  281. Pingback: flesh dildos

  282. Pingback: Quick News Updates

  283. Pingback: Taoist Real Sex Talk

  284. Pingback: luxury vibrator

  285. Pingback: click here

  286. Pingback: games for pc download

  287. Pingback: why sex is important

  288. Pingback: how often do married couples have sex

  289. Pingback: washing

  290. Pingback: Bond back cleaning in Melbourne

  291. Pingback: Mitsubishi trimmer recoil starter

  292. Pingback: label besi

  293. Pingback: rental cleaning Melbourne

  294. Our workplace is opened 24/7. So, you will be able to be aware U.S.A. All time giving you the best services with 100 percent pride inner terribly short quantity.

  295. Pingback: how much do exterminators charge for mice

  296. Pingback: vibrating butt plug

  297. Pingback: best gay sex toys

  298. Pingback: gay toys

  299. Pingback: butt plug

  300. Pingback: anal butt plug

  301. Pingback: Glamerotica101

  302. Pingback: dr. kat

  303. Pingback: Beads

  304. Pingback: waterproof vibrators for sale

  305. Pingback: cheap end of lease cleaning Melbourne

  306. Pingback: bandiere

  307. Pingback: kala jadu

  308. Pingback: interior design Singapore

  309. Pingback: adam and eve sex toy

  310. Pingback: vibrator

  311. Pingback: sex toy de luxe

  312. Pingback: Butterfly Kiss Sex Toy

  313. Pingback: Magic Massager Deluxe

  314. Pingback: Magic Wand Original

  315. Pingback: Dolphin Dildo

  316. Pingback: Super Head Honcho Masturbator

  317. Pingback: Under The Bed Restraints

  318. Pingback: Best Lubricant

  319. Pingback: cock extender

  320. Pingback: good head kit for him

  321. Pingback: personal lube

  322. Pingback: vacate cleaning Melbourne

  323. Pingback: Sripatum

  324. Pingback: adam and eve sex toys

  325. Pingback: pc games apps for laptop

  326. Pingback: pc games for windows 7

  327. Pingback: sex toys

  328. Pingback: home page

  329. Pingback: Allegheny County divorce forms

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">