バーンウェルト テクニカル (Die Bahnwelt Technical)

□ 振動周期テーブル

Sin Curve Ramdom Bahnwelt Vibration

Die Bahnwelt では、なにかと振動するシーンが出てきます。ゲーム中も地震や爆発でマップがぐらぐら揺れたりいたします。

こういう時は、乱数で揺らすというのが最も一般的なやり方ですが、やはり自然な揺れを表現するには、いわゆる「1/f ゆらぎ」を与えなければ!! というわけで、専用の振動周期テーブルというのを作り、これをいわゆるSIN関数の代わりのように使ってみたわけです。

うーん、ひょっとして乱数を補間すりゃ、済んだのだろうか・・
だいたい、この振動テーブル、どうやって作ったんだろう。本当に 1/f 揺らぎになっとるんだろうか!??

Chaos Cyclic Data Sin Cyclic Data
short  chaos[256] = {
	0,-54,-108,-163,-217,-272,-326,-380,
	-435,-342,-250,-157,-65,27,119,212,
	304,257,210,163,115,68,21,-25,
	-72,-115,-158,-200,-243,-286,-329,-371,
	-414,-333,-251,-170,-89,-7,73,154,
	236,179,122,66,9,-47,-103,-160,
	-217,-221,-225,-229,-234,-238,-242,-246,
	-250,-243,-235,-227,-220,-212,-205,-197,
	-189,-202,-215,-229,-242,-255,-268,-281,
	-294,-269,-244,-220,-195,-170,-145,-121,
	-96,-134,-172,-209,-247,-285,-323,-361,
	-398,-325,-252,-179,-106,-33,39,113,
	186,125,64,4,-56,-117,-178,-238,
	-299,-272,-245,-218,-192,-165,-138,-111,
	-84,-124,-165,-205,-245,-286,-326,-367,
	-407,-329,-252,-174,-97,-19,58,135,
	213,154,95,36,-22,-81,-140,-198,
	-257,-247,-237,-226,-216,-206,-196,-185,
	-175,-193,-210,-227,-245,-262,-279,-297,
	-314,-281,-248,-214,-181,-148,-115,-81,
	-48,-95,-143,-190,-237,-284,-331,-378,
	-425,-338,-251,-163,-76,11,98,186,
	273,221,169,117,65,13,-38,-90,
	-143,-169,-196,-222,-249,-275,-302,-328,
	-355,-303,-251,-200,-148,-97,-45,6,
	57,-2,-62,-122,-182,-242,-302,-362,
	-422,-336,-251,-166,-80,4,90,175,
	260,207,153,99,45,-8,-61,-115,
	-169,-188,-207,-227,-246,-265,-284,-303,
	-322,-286,-249,-212,-175,-138,-101,-64,
	-27,-78,-128,-179,-229,-280,-331,-381,
	-432,-378,-324,-270,-216,-162,-108,-54
	};
	  
short  sinroll[256] = {
	0,6,12,18,25,31,37,43,
	49,56,62,68,74,80,86,92,
	97,103,109,115,120,126,131,136,
	142,147,152,157,162,167,171,176,
	181,185,189,193,197,201,205,209,
	212,216,219,222,225,228,231,234,
	236,238,241,243,244,246,248,249,
	251,252,253,254,254,255,255,255,
	255,255,255,255,254,254,253,252,
	251,249,248,246,244,243,241,238,
	236,234,231,228,225,222,219,216,
	212,209,205,201,197,193,189,185,
	181,176,171,167,162,157,152,147,
	142,136,131,126,120,115,109,103,
	97,92,86,80,74,68,62,56,
	49,43,37,31,25,18,12,6,
	0,-6,-12,-18,-25,-31,-37,-43,
	-49,-56,-62,-68,-74,-80,-86,-92,
	-97,-103,-109,-115,-120,-126,-131,-136,
	-142,-147,-152,-157,-162,-167,-171,-176,
	-181,-185,-189,-193,-197,-201,-205,-209,
	-212,-216,-219,-222,-225,-228,-231,-234,
	-236,-238,-241,-243,-244,-246,-248,-249,
	-251,-252,-253,-254,-254,-255,-255,-255,
	-255,-255,-255,-255,-254,-254,-253,-252,
	-251,-249,-248,-246,-244,-243,-241,-238,
	-236,-234,-231,-228,-225,-222,-219,-216,
	-212,-209,-205,-201,-197,-193,-189,-185,
	-181,-176,-171,-167,-162,-157,-152,-147,
	-142,-136,-131,-126,-120,-115,-109,-103,
	-97,-92,-86,-80,-74,-68,-62,-56,
	-49,-43,-37,-31,-25,-18,-12,-6
	};