Submit Search
Upload
相対論的ゲームを作る
•
0 likes
•
774 views
K
Kin-ya Oda
Follow
日本デジタルゲーム学会(DiGRA Japan) 2015年夏季研究発表大会 企画セッション「物理学とゲーム開発ーゲームにおける物理学の役割と可能性ー」招待講演
Read less
Read more
Software
Report
Share
Report
Share
1 of 53
Download now
Download to read offline
Recommended
公開用_講演資料_SCSK.pdf
公開用_講演資料_SCSK.pdf
直久 住川
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定
Masaaki Imaizumi
"分人"型社会とAI
"分人"型社会とAI
National Institute of Informatics (NII)
Hoare論理
Hoare論理
Tetsuro Nagae
株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)
Fixstars Corporation
Elasticsearchの機械学習機能を使ってみた
Elasticsearchの機械学習機能を使ってみた
YuichiArisaka
データ中心の時代を生き抜くエンジニアに知ってほしい10?のこと
データ中心の時代を生き抜くエンジニアに知ってほしい10?のこと
Hideo Terada
社会シミュレーションとデジタルゲーム
社会シミュレーションとデジタルゲーム
Youichiro Miyake
Recommended
公開用_講演資料_SCSK.pdf
公開用_講演資料_SCSK.pdf
直久 住川
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定
Masaaki Imaizumi
"分人"型社会とAI
"分人"型社会とAI
National Institute of Informatics (NII)
Hoare論理
Hoare論理
Tetsuro Nagae
株式会社フィックスターズの会社説明資料(抜粋)
株式会社フィックスターズの会社説明資料(抜粋)
Fixstars Corporation
Elasticsearchの機械学習機能を使ってみた
Elasticsearchの機械学習機能を使ってみた
YuichiArisaka
データ中心の時代を生き抜くエンジニアに知ってほしい10?のこと
データ中心の時代を生き抜くエンジニアに知ってほしい10?のこと
Hideo Terada
社会シミュレーションとデジタルゲーム
社会シミュレーションとデジタルゲーム
Youichiro Miyake
衝突判定
衝突判定
Moto Yan
{shiny}と{leaflet}による地図アプリ開発Tips
{shiny}と{leaflet}による地図アプリ開発Tips
Takashi Kitano
ディープラーニングによるラーメン二郎全店舗識別と生成
ディープラーニングによるラーメン二郎全店舗識別と生成
knjcode
Introduction to YOLO detection model
Introduction to YOLO detection model
WEBFARMER. ltd.
カルマンフィルタ入門
カルマンフィルタ入門
Yasunori Nihei
Python用ゲームエンジンPyxelで遊んでみた
Python用ゲームエンジンPyxelで遊んでみた
Hirofumi Watanabe
Cesiumを動かしてみよう
Cesiumを動かしてみよう
Kazutaka ishizaki
実践で学ぶネットワーク分析
実践で学ぶネットワーク分析
Mitsunori Sato
リンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かす
tomohiro kuwano
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
UnityTechnologiesJapan002
画像認識で物を見分ける
画像認識で物を見分ける
Kazuaki Tanida
続・わかりやすいパターン認識 第7章「マルコフモデル」
続・わかりやすいパターン認識 第7章「マルコフモデル」
T T
ぼくらが体験入社にこだわるワケ
ぼくらが体験入社にこだわるワケ
Daisuke Sato
5分でわかる Unity点群
5分でわかる Unity点群
UnityTechnologiesJapan002
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
moto2g
【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門
Unity Technologies Japan K.K.
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Norishige Fukushima
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
UnityTechnologiesJapan002
2022国際ロボット展に見る産業用ロボットの最新技術動向
2022国際ロボット展に見る産業用ロボットの最新技術動向
豆寄席 (株式会社豆蔵)
Example of exiting legacy system
Example of exiting legacy system
TakamchiTanaka
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
Akira Asano
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
Akira Asano
More Related Content
What's hot
衝突判定
衝突判定
Moto Yan
{shiny}と{leaflet}による地図アプリ開発Tips
{shiny}と{leaflet}による地図アプリ開発Tips
Takashi Kitano
ディープラーニングによるラーメン二郎全店舗識別と生成
ディープラーニングによるラーメン二郎全店舗識別と生成
knjcode
Introduction to YOLO detection model
Introduction to YOLO detection model
WEBFARMER. ltd.
カルマンフィルタ入門
カルマンフィルタ入門
Yasunori Nihei
Python用ゲームエンジンPyxelで遊んでみた
Python用ゲームエンジンPyxelで遊んでみた
Hirofumi Watanabe
Cesiumを動かしてみよう
Cesiumを動かしてみよう
Kazutaka ishizaki
実践で学ぶネットワーク分析
実践で学ぶネットワーク分析
Mitsunori Sato
リンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かす
tomohiro kuwano
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
UnityTechnologiesJapan002
画像認識で物を見分ける
画像認識で物を見分ける
Kazuaki Tanida
続・わかりやすいパターン認識 第7章「マルコフモデル」
続・わかりやすいパターン認識 第7章「マルコフモデル」
T T
ぼくらが体験入社にこだわるワケ
ぼくらが体験入社にこだわるワケ
Daisuke Sato
5分でわかる Unity点群
5分でわかる Unity点群
UnityTechnologiesJapan002
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
moto2g
【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門
Unity Technologies Japan K.K.
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Norishige Fukushima
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
UnityTechnologiesJapan002
2022国際ロボット展に見る産業用ロボットの最新技術動向
2022国際ロボット展に見る産業用ロボットの最新技術動向
豆寄席 (株式会社豆蔵)
Example of exiting legacy system
Example of exiting legacy system
TakamchiTanaka
What's hot
(20)
衝突判定
衝突判定
{shiny}と{leaflet}による地図アプリ開発Tips
{shiny}と{leaflet}による地図アプリ開発Tips
ディープラーニングによるラーメン二郎全店舗識別と生成
ディープラーニングによるラーメン二郎全店舗識別と生成
Introduction to YOLO detection model
Introduction to YOLO detection model
カルマンフィルタ入門
カルマンフィルタ入門
Python用ゲームエンジンPyxelで遊んでみた
Python用ゲームエンジンPyxelで遊んでみた
Cesiumを動かしてみよう
Cesiumを動かしてみよう
実践で学ぶネットワーク分析
実践で学ぶネットワーク分析
リンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かす
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
【Unite Tokyo 2019】「今からでも大丈夫。Vuforia EngineでつくるAR の世界」
画像認識で物を見分ける
画像認識で物を見分ける
続・わかりやすいパターン認識 第7章「マルコフモデル」
続・わかりやすいパターン認識 第7章「マルコフモデル」
ぼくらが体験入社にこだわるワケ
ぼくらが体験入社にこだわるワケ
5分でわかる Unity点群
5分でわかる Unity点群
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
YOLO V3で独自データセットを学習させて物体検出 / Yolo V3 with your own dataset
【Unity道場】新しいPrefabワークフロー入門
【Unity道場】新しいPrefabワークフロー入門
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Unityでロボットの教師データは作れる!
Unityでロボットの教師データは作れる!
2022国際ロボット展に見る産業用ロボットの最新技術動向
2022国際ロボット展に見る産業用ロボットの最新技術動向
Example of exiting legacy system
Example of exiting legacy system
Similar to 相対論的ゲームを作る
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
Akira Asano
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
Akira Asano
シェーダだけで世界を創る!three.jsによるレイマーチング
シェーダだけで世界を創る!three.jsによるレイマーチング
Sho Hosoda
2018年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2018. 12. 21)
2018年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2018. 12. 21)
Akira Asano
2020年度秋学期 画像情報処理 第11回 Radon変換と投影定理 (2020. 12. 4)
2020年度秋学期 画像情報処理 第11回 Radon変換と投影定理 (2020. 12. 4)
Akira Asano
2016年度秋学期 画像情報処理 第14回 逆投影法による再構成 (2017. 1. 19)
2016年度秋学期 画像情報処理 第14回 逆投影法による再構成 (2017. 1. 19)
Akira Asano
強化学習その3
強化学習その3
nishio
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
ryosuke-kojima
2022年度秋学期 画像情報処理 第10回 Radon変換と投影切断面定理 (2022. 12. 2)
2022年度秋学期 画像情報処理 第10回 Radon変換と投影切断面定理 (2022. 12. 2)
Akira Asano
CG2013 06
CG2013 06
shiozawa_h
PRML 10.4 - 10.6
PRML 10.4 - 10.6
Akira Miyazawa
2022年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2022. 12. 9)
2022年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2022. 12. 9)
Akira Asano
Similar to 相対論的ゲームを作る
(12)
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
2021年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2021. 12. 3)
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
2021年度秋学期 画像情報処理 第10回 Radon変換と投影定理 (2021. 11. 19)
シェーダだけで世界を創る!three.jsによるレイマーチング
シェーダだけで世界を創る!three.jsによるレイマーチング
2018年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2018. 12. 21)
2018年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2018. 12. 21)
2020年度秋学期 画像情報処理 第11回 Radon変換と投影定理 (2020. 12. 4)
2020年度秋学期 画像情報処理 第11回 Radon変換と投影定理 (2020. 12. 4)
2016年度秋学期 画像情報処理 第14回 逆投影法による再構成 (2017. 1. 19)
2016年度秋学期 画像情報処理 第14回 逆投影法による再構成 (2017. 1. 19)
強化学習その3
強化学習その3
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
2022年度秋学期 画像情報処理 第10回 Radon変換と投影切断面定理 (2022. 12. 2)
2022年度秋学期 画像情報処理 第10回 Radon変換と投影切断面定理 (2022. 12. 2)
CG2013 06
CG2013 06
PRML 10.4 - 10.6
PRML 10.4 - 10.6
2022年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2022. 12. 9)
2022年度秋学期 画像情報処理 第11回 逆投影法による再構成 (2022. 12. 9)
相対論的ゲームを作る
1.
相対論的ゲームを 作る 尾田欣也(大阪大学) with 中山大樹(大阪大学) picture from web
2.
相対論が見たい!
3.
相対論が見たい!
4.
Outline 1. なにがみえるか。 2. 相対性理論10分間ダイジェスト。 3.
ゲームへの実装。
5.
https://en.wikipedia.org/wiki/Aberration_of_light サーチライト効果(光行差)
6.
https://en.wikipedia.org/wiki/Aberration_of_light サーチライト効果(光行差)
7.
後退効果(自称) ✦ 加速する⽅向にものが遠ざかっていきました ね? ✴ その反対向きは近づいてくるようにみえる。 ✦
後退効果は真に相対論的な効果。 ✴ ⼀⽅光⾏差(前⾴)は光速が有限というだけで起きる。
8.
✴ 背景における効果は既に⾒た。 ドップラー効果 ✦ 遠ざかるものは⾚く、近づくものは⻘く。 http://www.actele.co.jp/knowledge/image/KNO_15.jpg
9.
✴ 背景における効果は既に⾒た。 ドップラー効果 ✦ 遠ざかるものは⾚く、近づくものは⻘く。 http://www.actele.co.jp/knowledge/image/KNO_15.jpg
10.
時間の遅れ(浦島効果)
11.
時間の遅れ(浦島効果)
12.
ここまでのまとめ ✦ サーチライト効果(光⾏差) ✦ 後退効果(ローレンツ収縮) ✦
ドップラー効果 ✦ 時間の遅れ
13.
Outline 1. なにがみえるか。 2. 相対性理論10分間ダイジェスト。 3.
ゲームへの実装。
14.
注: 特殊 vs
一般 ✦ このトークで取り扱うのは特殊相対論。 ✴ これは⾼校の数学で理解できる。 ✦ 重⼒を時空の歪みとして → ⼀般相対論。 ✴ これはリーマン幾何学という⼤学の数学が必要。 ✴ ゲームに取り⼊れるにはまだ計算器の速さが⾜りない? ✤ リアルタイムでレイ・トレーシングをやるぐらいのかんじ。
15.
回転不変性 ✦ どの向きにみても物理法則は変わらない。 ✴ なのでぐりんぐりん回せるわけです。
16.
回転不変性 ✦ どの向きにみても物理法則は変わらない。 ✴ なのでぐりんぐりん回せるわけです。
17.
回転不変性を式で(眺めるだけ) http://akita-nct.jp/yamamoto/lecture/2007/p1/2nd/html/node7.html
18.
回転不変性を式で(眺めるだけ) ✦ 原点まわりの回転: ⾏列による⼀次変換 2 4 x y z 3 5 ! 2 4 x0 y0 z0 3 5
= 2 4 Rxx Rxy Rxz Ryx Ryy Ryz Rzx Rzy Rzz 3 5 2 4 x y z 3 5 ~x ! ~x0 = R~x ✦ 回転=原点からの距離を変えない⼀次変換 http://akita-nct.jp/yamamoto/lecture/2007/p1/2nd/html/node7.html ~x02 = ~x2 ! RT R = 1
19.
等速直線運動系へ ✦ ガリレイ・ブースト: ✴ xʼ 系からみると x 系は速度 v で動いている。 x y z z0 y0 x0~v ~x
! ~x0 = ~x + ~vt
20.
~x ! ~x0 =
~x + ~vt t ~x ! t0 ~x = t 0 ~v 1 t ~x 2 6 6 4 t x y z 3 7 7 5 ! 2 6 6 4 t0 x0 y0 z0 3 7 7 5 = 2 6 6 4 t 0 0 0 vx 1 0 0 vy 0 1 0 vz 0 0 1 3 7 7 5 2 6 6 4 t x y z 3 7 7 5 時空でガリレイ・ブースト ✦ 時空でみると回転と似た⼀次変換。
21.
光速度不変 ✦ 回転=原点からの距離を不変にする空間座標の⼀次変換。 ✦ 光の速さ c を不変にする時空の⼀次変換は? ✦
なんでそんなことを考えるのか?(余談なので⾶ばす) ✴ 電磁気学は回転不変だけどガリレイ・ブーストで不変ではない。 ✴ パンがなければお菓⼦を⾷べればいいじゃない: ✤ ガリレイ・ブーストをある極限として含むようなもっとリッチな変換で不変にしとけば? ✴ 理論を拡張するときの定跡: どんな量を不変にしたいかを考える。 ✤ 光速度 c を不変にしてみよう。
22.
速度 c の光の球面波 ✦
t=0 に原点を出た光の球⾯波の波⾯: https://en.wikipedia.org/wiki/Wave_equation x2 + y2 + z2 = (ct) 2
23.
速度 c の光の球面波 ✦
t=0 に原点を出た光の球⾯波の波⾯: https://en.wikipedia.org/wiki/Wave_equation x2 + y2 + z2 = (ct) 2
24.
ローレンツ変換(眺めるだけ) ✦ この量を不変にする⼀次変換が、ローレンツ変換: x2 + y2 +
z2 = (ct) 2 2 6 6 4 ct x y z 3 7 7 5 ! 2 6 6 4 ct0 x0 y0 z0 3 7 7 5 = 2 6 6 4 ⇤tt ⇤tx ⇤ty ⇤tz ⇤xt ⇤xx ⇤xy ⇤xz ⇤yt ⇤yx ⇤yy ⇤yz ⇤zt ⇤zx ⇤zy ⇤zz 3 7 7 5 2 6 6 4 ct x y z 3 7 7 5 (ct0 ) 2 + ~x02 = (ct) 2 + ~x2 ! ⇤T ⌘ ⇤ = ⌘
25.
特殊相対論まとめ ✦ 光速度不変を仮定。 ✦ 球⾯波の形を不変に ✴
→ ローレンツ変換。 ✴ → たしかにガリレイ・ブースト(等速直線運動系への)を含む。
26.
Outline 1. なにがみえるか。 2. 相対性理論10分間ダイジェスト。 3.
ゲームへの実装。
27.
従前のゲームにおける時間発展
28.
従前のゲームにおける時間発展 ✦ 時刻 t で物体の位置 x、速度 v を覚えてる。 ✴ 画⾯には位置 x で表⽰されている。 ✦
プログラム⼀回しの経過時間 Δt 後、位置を x + v Δt に更新。 ✴ プログラムっぽく書くと、x += v Δt ✴ この新しい位置 x + v Δt を画⾯に表⽰する。 ✦ 速度 v は? ✴ 安直: その都度の⼊⼒がそのまま速度に。 ✴ 物理エンジン: 加速度 a を与え v + a Δt に更新。 ✦ これの繰り返し。
29.
どこを変更して相対論化するか?
30.
有限の光速度と光円錐 ✦ 光円錐はローレンツ不変量: ✴ (ct) 2 = x 2 +y 2 +z 2 。 ✦
すべての者は、 ✴ 過去光円錐(PLC)と他の世界線との 交点を⾒る。 ✴ 過去光円錐(PLC)より過去側からの み影響を受けうる。 ✴ 未来光円錐(FLC)より未来側にのみ 影響を及ぼせる。 ⾃然単位系 (c=1) で 光は常に45°の傾きで進む
31.
Idea ★同時刻⾯ではなく、プレイヤーの過去光円錐で時空をスライス。 ✦ →有限の光速 ✴ 敵もまた、敵の過去光円錐で世界を⾒る。 ✦
→因果律 ★ゲーム時間はプレイヤーの固有時に同期。 ✦ →時間の遅れ ★各瞬間にプレイヤーの静⽌系で世界を描画する。 ✦ →ローレンツ後退(収縮)
32.
ローレンツ後退(収縮) ★加速してから(描画の ための)静⽌系に移る。 ✴ 進⾏⽅向の物体はより 速く近づくように。 ★近づく棒はむしろ奥⾏ ⽅向に伸びて⾒える。 遠ざかる棒を観測 近づく棒を観測 x1 t 図 6
時空 D = 2 次元の場合の棒の世界面 (黄色) 。世界面上の筋は棒の構成粒子
33.
ドップラー効果?★波数ベクトルのローレンツ変換の式⾃体は簡単に書ける。が、 ★⾊=RGB 3つの数。 ✴ 元の光のスペクトルの情報より絶望的に少ない。 ★与えられた画像のドップラー効果はテキトーにしか導⼊できない。 400 450
500 550 600 650 700 Wavelength (nm) Normalizedconeresponse(linearenergy) S M L photoreceptor proteinWikipedia: Color vision http://www.handprint.com/HP/WCL/color1.html
34.
ドップラー ★というわけでこちらもテキトーに導⼊。 10000 20000 30000
40000 50 100 150 200 250 温度 [K] RGB値 ★⾊ごとに温度を決め、光的な4次元ベクトルの時間成分に 突っ込んでローレンツ変換。
35.
まとめ 1. なにがみえるか。 2. 10分で相対性理論を知る。 3.
ゲームへの実装。
36.
まとめ 1. なにがみえるか。 2. 10分で相対性理論を知る。 3.
ゲームへの実装。 ✦ Mac/Win でゲームできます。 「そげぶ+相対論」で検索! ✦ 中⼭くんが4⽉から就職。→プログラマ募集中!!
37.
Thank you! Picture from web.
38.
backup
39.
相対論的スケール ✦ ゲームの舞台としては太陽系 が程良い。 ✴ 光速近くで移動するプレイヤー: ✤
固有時はローレンツ因⼦で割られる。 ✤ 左記よりもっと短い時間として知覚される。 ✦ もっと計算機が速くなったら 舞台は⽇常3Dで、マトリック ス(映画)⾵に光速が遅いよ うな場合も⾯⽩いかもしれな い。 40光分 7光時 Figure from web.
40.
加速度の変換 ★共変速度 un で⾛っている物体が、⾃分の静 ⽌系で αn の加速をした場合: α0 n = 0 物体
On の共変速度が un だったとする。具体的には S は evoluti 4.2 節と _foliation イヤーの静止系 Sp である。このとき、入力 αn = 0, ⃗αn に対す n·⃗αn ⃗un) , ⃗αn は αn = L(−⃗un)αn = γ(⃗un) ⃗uT n ⃗un Id + (γ(⃗un) − 1) ˆun ˆuT n 0 ⃗αn = ⃗un · ⃗αn ⃗αn + (γ(⃗un) − 1) ˆun · ⃗αn ˆun 、 つまりは
41.
時間発展 xp = 0 ⃗0 −→ 0 ⃗0 up = 1 ⃗0 −→ 1 ⃗0 αp
= 0 ⃗αp (246) (基準系でのプレイヤー位置) X0 p −→ X0 p + γ ⃗Up ∆s ⃗Xp −→ ⃗Xp + ⃗Up ∆s ⃗Up −→ ⃗Up + ⃗Ap ∆s (247) (共動系での他物体の位置) xn = − |⃗xn| ⃗xn −→ x′ n := L(⃗αp∆s) − |⃗xn| ⃗xn + γ(⃗un) ⃗un ∆τn − ∆s ⃗0 −→ − ⃗x′ n ⃗x′ n un = ∗ ⃗un −→ u′ n := L(⃗αp∆s) γ(⃗un + ⃗αn∆τn) ⃗un + ⃗αn∆τn −→ γ(⃗u′ n) ⃗u′ n αn = ∗∗ ⃗αn (248) x_nu_nTransforma (共動系での全世界線) Wn = x0 n(a) ⃗xn(a) A a=1 −→ L(⃗αp∆s) x0 n(a) ⃗xn(a) − ∆s ⃗0 A a=1 (249) worldline_evolus (基準系での全世界線) W基 n = X0 n(a) ⃗Xn(a) A a=1 −→ X0 n(a) ⃗Xn(a) A a=1 (250) worldline_ref_fr
42.
ローレンツ「収縮」? ★近づく棒はむしろ奥⾏⽅向に伸びて⾒える。 遠ざかる棒を観測 近づく棒を観測 x1 t
43.
加速すると遠ざかる? ★等加速度運動のときの⾒かけの位置と速度: と思って自然単位系から光速 c を復活させる ξ(s)
= eas/c ξ0 − 2c2 a sinh2 as 2c 、 ξ′ (s) = ceas/c 1 + aξ0 c2 − eas/c 。 を大きな数と思って展開すると、おなじみ 結果をすべてを式 (253)に入れ、定数ベクトル ˆxn の係数を読みとると dξ ds = − sinh(as) cosh(as) − sinh(as) + aξ、 (268) 初期条件 ξ(0) = ξ0 の下で解くと ξ(s) = eas ξ0 − 2 a sinh2 as 2 。 (269) exact_xi_of_s ていたプレイヤーが、他の静止した物体に向かって等加速度運動をすると する、近似のない厳密な式が得られた。見かけの速度(見かけの距離の増 ξ′ (s) = eas (1 + aξ0 − eas ) (270) apparent_velocity_for_constant_acceleration 元と思って自然単位系から光速 c を復活させると、見かけの位置および速 ξ(s) = eas/c ξ0 − 2c2 a sinh2 as 2c 、 (271) NNU_exact_xi_of_s ξ′ (s) = ceas/c 1 + aξ0 c2 − eas/c 。 (272) NNU_apparent_velocity_for_constant_accelerat を大きな数と思って展開すると、おなじみの非相対論極限、すなわち 度運動の式が得られる: ξ(s) = ξ0 − a 2 s2 + O c−1 、 (273) NR_exact_xi_of_s ξ′ (s) = −as + O c−1 。 (274) NR_apparent_velocity_for_constant_accelerati ★さまざまな極限: きの、見かけの距離に対する、近似のない厳密な式が得られた。見かけの速度(見かけの距離の増 加率)は ξ′ (s) = eas (1 + aξ0 − eas ) (270) apparent となる。 ちなみに s を時間の次元と思って自然単位系から光速 c を復活させると、見かけの位置および速 度は ξ(s) = eas/c ξ0 − 2c2 a sinh2 as 2c 、 (271) NNU_exac ξ′ (s) = ceas/c 1 + aξ0 c2 − eas/c 。 (272) NNU_appa である。形式的に c = 1 を大きな数と思って展開すると、おなじみの非相対論極限、すなわち ニュートン力学の等加速度運動の式が得られる: ξ(s) = ξ0 − a 2 s2 + O c−1 、 (273) NR_exact ξ′ (s) = −as + O c−1 。 (274) NR_appar この節の以下の議論では自然単位系から c を戻して考えてみよう。 式 ( exact_xi_of_s 269)を、プレイヤーの経過時間 s が十分小さい: s ≪ c/a と思って展開すると、当初の疑問 どおり、見かけの距離は時間とともにどんどん離れてゆくことが分かる: ξ(s) = ξ0 + ξ0 as c + O as c 2 。 (275) 一方見かけの速度 ( apparent_velocity_for_constant_acceleration 270)は、 加率)は ξ′ (s) = eas (1 + aξ0 − eas ) (270) app となる。 ちなみに s を時間の次元と思って自然単位系から光速 c を復活させると、見かけの位置および速 度は ξ(s) = eas/c ξ0 − 2c2 a sinh2 as 2c 、 (271) NNU ξ′ (s) = ceas/c 1 + aξ0 c2 − eas/c 。 (272) NNU である。形式的に c = 1 を大きな数と思って展開すると、おなじみの非相対論極限、すなわち ニュートン力学の等加速度運動の式が得られる: ξ(s) = ξ0 − a 2 s2 + O c−1 、 (273) NR_ ξ′ (s) = −as + O c−1 。 (274) NR_ この節の以下の議論では自然単位系から c を戻して考えてみよう。 式 ( exact_xi_of_s 269)を、プレイヤーの経過時間 s が十分小さい: s ≪ c/a と思って展開すると、当初の疑問 どおり、見かけの距離は時間とともにどんどん離れてゆくことが分かる: ξ(s) = ξ0 + ξ0 as c + O as c 2 。 (275) 一方見かけの速度 ( apparent_velocity_for_constant_acceleration 270)は、 ξ′ (s) = c aξ0 c2 − 1 − aξ0 c2 as c + O as c 2 (276)
44.
背景の貼り付け U のとき、プレイヤーの共動系における(原点から十分遠くの)座 )Ξ を ξ
= ⎡ ⎢ ⎢ ⎣ −r r sin θ cos φ r sin θ sin φ r cos θ ⎤ ⎥ ⎥ ⎦ (382) star_position_in_player イヤーにとって (θ, φ) 方向から来る光が、テクスチャ座標の (U, V ) ある (θ, φ) を与えると、(プレイヤーの静止系での)対応する星の位 frame はここでは固定せず単に非常に大きなある距離とする。この位置は、 Ξ = L(−⃗U) ξ (383) Xi_vs_xi のようにして決まった (X, Y, Z) から、背景系での方角 (Θ, Φ) が 的に対応するテクスチャ座標 (U, V ) が ( UV_in_background_frame 381)で決まる。このとき、 らである。したがって r は計算に便利なように好きに取ってよい。 まとめる。プレイヤーの静止系でプレイヤーを包み込む球面を背景として考え、 スチャを貼る。この球面を構成するポリゴンの各頂点の位置ベクトルを ⃗r = (x, リゴンの各頂点は、プレイヤーの共動系での(一定の半径の)球面上に固定され、 るとする。(視線の方向を変えるには必要に応じてさらにカメラの方を回す。)頂点 景系での位置 (T, X, Y, Z) は ⎡ ⎢ ⎢ ⎣ T X Y Z ⎤ ⎥ ⎥ ⎦ = L(−⃗U) ⎡ ⎢ ⎢ ⎣ − x2 + y2 + z2 x y z ⎤ ⎥ ⎥ ⎦ で求まり、ここから *137 OpenGL では Umax = Vmax = 1 (というか (U, V ) のことを (S, T) と書くので結局 Sma 取っている。 99 U = Umax 2π arctan Y X 、 V = Vmax 1 − 1 π arctan √ X2 + Y 2 Z 、 するテクスチャ座標である。(逆正接関数としては Python では math モジ y, x) := arctan y x を用いるのがよいだろう。)
45.
過去光円錐 • 相対論において何かが見えるとはどういう事か? • 自機に見えるのは過去光円錐上の点である! •
∵ 時空点 (t, x) の過去光円錐はそこに到達する光の軌跡全体。 • 敵機の世界線と自機の過去光円錐の交点ξが表示さるべき点。 • 光円錐はローレンツ不変に決まるので どんな座標系で見ても、交点は存在する。 • ただし敵機(の世界線の端点)が自機に対して 空間的な(あるいは未来の)位置にあれば。 • 自機の静止系 x’でみた交点ξ’が 画面に表示されるべき敵機の位置。 • ローレンツ収縮も取り入れられる!
46.
過去光円錐を見る、とは • 例えば光速のビームで射たれたら
47.
固有時 • 固有時は世界線毎に定義されている。 • n番目の物体: •
基準系で速度を持った物体 の固有時は、基準時間より ゆっくり流れる。 dτn 2 = dt2 − d xn 2 = dt2 (1− vn 2 ) = dt2 γn 2 < dt2
48.
反変速度 • 相空間上の点を表すのに、vではなくローレンツ反変な 速度 u
を用いると便利: • 注: 時間成分は独立でない。 • uの空間成分と v は1対1対応。 un = γn vn = vn 1− vn 2 , vn = un γn = un 1+ un 2 . € un µ ( )≡ dxn µ dτn = γn, un( ), where γn = 1+ un 2 . 0 ≤ v < ∞ 1≤ γ < ∞ 0 ≤ u < ∞
49.
相対論的時間発展 • 基本的に入力(xμ,ui,αi)→微少時間後の出力(xμ, ui) 1.
前と同様、計算機時刻を基準時と同期するやり方: • 「時間の遅れ」は、与えられた入力に対する位置・速度の変更 しにくさの因子 (1+u2)−1/2 として表される。 2. 計算機時刻 ts を固有時と同期するやり方: tn (ts + dts ) = tn (ts )+ 1+ un 2 dts xn (ts + dts ) = xn (ts )+ undts un (ts + dts ) = un (ts )+ αndts € xn (t + dt) = xn + un 1+ un 2 dt un (t + dt) = un + αn 1+ un 2 dt
50.
時間の遅れ • 後者の計算機時間を各機の固有時と同期するやり方では: • (ある計算機時刻で)同基準時刻にいたプレイヤーは、 次のステップで別の基準時刻に移動する。 •
すべてのプレイヤーが「時間の遅れ」を体感できる。 • 因果律の破れはないものの 追い越してしまう場合がある。 • 未来側に行ったプレイヤーは 止めておくか。
51.
まとめと展望(昔の) • そろそろ相対論的ゲームを作るべき時期である。 • 因果律を破らぬためには光円錐が重要。 •
ローレンツ収縮は問題なく取り入れられる。 • 固有時で時間発展させると時間の遅れも取り入れられる が、追い越し問題あり。(未来側を止めるか。) • 言わなかった事 (応質問) • 勝手な u の静止系への変換を具体的に求めた。(new?) • ロケット推進も導入可。 • ドップラー効果も導入可。 • 1 player なら過去光円錐でfoliateすれば時間の遅れ無問題。
52.
静止系への変換の具体形
53.
ロケットの原理 • 相対論的運動量保存則 • ロケットの静止系で入力が与えられるとすると、
Editor's Notes
・地球・月・太陽・銀河中心。
Download now