Apa itu "ruang dunia" dan "ruang mata" dalam pengembangan game?

Jawaban:

25

Sebelum memahami apa itu dunia atau ruang mata, apa itu ruang?

Dalam pengertian abstrak, ruang geometris (misalnya Ruang Euclidean) adalah batas tanpa batas di mana objek cenderung ada. Ruang mendefinisikan properti dasar yang harus dipenuhi oleh objek yang hidup di ruang ini. Misalnya dalam jarak ruang euclidean didefinisikan sebagai Sqrt( vector dot product with itself).

Kebanyakan orang cenderung mencampur antara definisi Space dan sistem Coordinate. Sebuah ruang sebagai ruang euclidean mendefinisikan properti tetapi tidak mendefinisikan sistem koordinat, saya akan mengatakan "ruang mata" lebih baik disebut "koordinat mata".

Dalam grafik komputer kita hampir secara eksklusif berurusan dengan ruang euclidean. Ketika Anda mendefinisikan Vertex dari (X, Y, Z) di ruang euclidean itu tidak berarti apa-apa bagi kami.

Definisi yang lebih nyata adalah mendefinisikannya relatif terhadap beberapa sistem koordinat. Misalnya Vertex (X, Y, Z) relatif terhadap koordinat mata. Jadi jika Vertex = (0,2,3) relatif terhadap koordinat mata. itu berarti titik ini adalah:

  • 0 dalam arah X dari posisi X mata.
  • 2 di arah Y dari posisi mata Y.
  • 3 di arah Z dari posisi mata Z.
  • Dan jarak sudut dari mata adalah sqrt (0 ^ 2 + 2 ^ 2 + 3 ^ 2) = sqrt (13) unit.

Tapi apa itu koordinat mata dan bagaimana kita mendefinisikan sistem koordinat?

Kami mendefinisikan sistem koordinat dengan menyediakan tiga basis ortogonal (baca: satuan panjang dan tegak lurus) yang menyerupai orientasi, dan posisi (terjemahan). masukkan deskripsi gambar di sini

Jadi jika kamera dalam openGL didefinisikan (perhatikan bahwa ini relatif terhadap koordinat Dunia):

 - Position (0,3,10)
 - Up       (0,1,0)
 - Forward  (0,0,-1)
 - Right    (1,0,0)

Ini berarti bahwa pemirsa diatur pada (0,3,10) dari dunia (0,0,0) dan kanannya sejajar dengan sumbu dunia X, dan ke depan adalah membalikkan dunia Z, dan ke atas selaras ke Dunia Y.

masukkan deskripsi gambar di sini

Tapi Anda terlalu banyak bicara tentang koordinat mata, apa itu Koordinat Dunia?

Koordinat dunia hanyalah sistem koordinat induk tetap. Mata berkoordinasi dengan sendirinya harus relatif terhadap sesuatu. Ini adalah sistem koordinat global yang semuanya didefinisikan relatif terhadap.

Koordinat Dunia memiliki i tetap = (1,0,0) di arah X, j = (0,1,0) di arah Y, k = (0,0,1) di arah Z. Ini adalah vektor yang menentukan sistem koordinat Cartesius.

Tapi itu tidak masuk akal! Berapakah koordinat yang didefinisikan oleh koordinat Dunia?

Saya akan mengatakan itu relatif terhadap dirinya sendiri, pada kenyataannya yang akan menjadi pusat alam semesta (tapi itu terlalu sederhana).

Tetapi dalam pengertian yang lebih praktis, saya akan mengatakan dalam Computer Graphics, nyaman untuk mendefinisikan ruang dunia sebagai pusat alam semesta (dunia game) sehingga kita bisa membayangkan bagaimana hal-hal dapat saling berhubungan.

concept3d
sumber