Bagaimana saya bisa mengimplementasikan kamera orang ketiga di peta SC2?

8

Saya ingin mencoba membuat peta Starcraft 2 khusus dengan kamera orang ketiga mengikuti sebuah unit. Beberapa peta khusus dengan fitur ini sudah ada, jadi saya tahu itu mungkin.

Bagaimana saya melakukan ini? Apakah saya memerlukan file mod khusus, atau dapatkah semuanya dilakukan dalam file peta?

Nick Vaccaro
sumber
2
sc2mapster.com/maps/tpsfps_battle_rts Saya pikir ini mungkin membantu. Tautan ke situs untuk salah satu peta yang lebih populer yang memiliki fitur ini. Saya pikir mereka memiliki caranya di situs.
McAzzaMan
Menghubungi seorang penulis peta khusus yang melakukan ini mungkin akan menjadi cara paling mudah untuk mengetahui caranya ..
Jari Komppa
Pertanyaan ini tampaknya di luar topik karena ini tentang modding game tertentu, dan setelah tiga tahun itu tidak mungkin dijawab.
Jari Komppa
@Jari Saya pikir ini harus tetap terbuka selama permainan modding on-topic di sini dan SC2 memiliki komunitas yang aktif. The SC2: Heart of the Swarm ekspansi ini hanya satu tahun.
Anko
@Anko Setuju; SC2 dan mod-modnya jauh dari ketinggalan jaman. Juga, pertanyaannya sempit dan jelas mungkin untuk diselesaikan.
Seth Battin

Jawaban:

1

Informasi yang disediakan di bawah ini dari http://www.staredit.net/starcraft2/Third_Person_Camera di mana Anda dapat menemukan lebih banyak hal seperti pemicu WASD dan beberapa opsi kamera, tetapi dasar-dasar untuk pengaturan orang ke-3 ada di sini:

Menyiapkan Objek Kamera

Di bawah tombol "Buat Kamera", Anda akan melihat kotak putih dengan nilai "Camera 001" di dalamnya, klik kanan dan tekan "Modify Properties". Atur nilainya menjadi berikut (Nama - Sub - Nilai - (Keterangan)):

  • Angle - Field Of View - 27.996 - (Seberapa lebar tampilan. Ini akan menjadi tampilan 28 derajat dari kiri layar ke kanan) Angle - Roll - 0.0 - (Seberapa jauh untuk menggulung kamera dari kiri ke kanan . Pikirkan gulungan gulungan.)
  • Depth of Field - Jumlah - 0,0 - (Tidak diketahui, jangan ragu untuk memperbarui artikel wiki jika Anda mengetahui informasi tentang nilai ini)
  • Depth of Field - Kedalaman - 8.0 - (Seberapa jauh kamera melihat)
  • Depth of Field - End - 8.0 - (Posisi ujung tampilan dari sudut kamera)
  • Depth of Field - Start - 0.0 - (Posisi awal tampilan dari sudut kamera)
  • Jarak - 4 - (Seberapa jauh kamera literal dari lokasi sebenarnya dari kamera. Mengatur ini ke 0 menghasilkan FPS (First Person Shooter), sekitar 4 dengan menjadi TPS (Third Person Shooter))
  • Distance - Far Clip - 300.0 - (Jarak dari mana tidak akan ada render. Jika ada yang lebih jauh dari ini dari kamera, itu TIDAK AKAN MENYERAH)
  • Distance - Near Clip - .1 - (Jarak ketika tidak ada yang dirender. Jika ada yang lebih dekat dari ini dari kamera, itu TIDAK AKAN MENYERAH)
  • Distance - Shadow Clip - 75.0 - (Dengan asumsi jarak setelah bayangan tidak akan diberikan)
  • Target - Pitch - 12 - (Pitch kamera. Pitch adalah gerakan naik / turun)
  • Target - X - (Tidak masalah, ini akan mengubah setiap frame game)
  • Target - Y - (Tidak masalah, ini akan mengubah setiap frame game)
  • Target - Menguap - 180 - (Menguap dari kamera. Pikirkan gerakan kiri ke kanan yang bukan gulungan gulungan)
  • Target - Z Offset - 1 - (Seberapa jauh kamera berada di permukaan tanah)

Nilai utama yang kita butuhkan di sini adalah Jarak - 4. Mengatur ini ke 4 akan membuat kamera orang ketiga (Meskipun dengan unit selain laut, Anda mungkin perlu mengedit ini). 0 akan membuat kamera orang pertama. Hal yang sama berlaku untuk Target - Z Offset - 1. Unit yang lebih tinggi akan membutuhkan nilai yang lebih tinggi untuk menaikkan beberapa kamera.

Variabel Global

Beberapa variabel global diperlukan, nama dan jenisnya ditunjukkan di bawah ini (Nama - Jenis - Nilai - (Keterangan)):

  • FaceOffset [8] - Nyata - 0,0 - (Di mana masing-masing unit pemain menghadap)
  • Kecepatan - Nyata - 0,03 - (Kecepatan perpindahan unit)
  • Unit [8] - Unit - [KOSONGKAN] - (Menyimpan unit masing-masing pemain)
  • PlayerA [8] - Nyata - 0 - (Toko adalah pemain Kuncinya turun)
  • PlayerS [8] - Nyata - 0 - (Toko adalah pemain kunci S turun)
  • PlayerD [8] - Nyata - 0 - (Toko adalah pemain kunci D turun)
  • PlayerW [8] - Nyata - 0 - (Toko adalah pemain kunci W turun)

Siapkan Pemicu Kamera

Set Up Camera
   Events
       Timer - Every 0.0 seconds of Game Time
   Local Variables
       Yaw = 0.0 <Real>
       CameraFocus = No Point <Point>
       Counter = 0 <Integer>
   Conditions
   Actions
       General - For each integer Counter from 1 to 8 with increment 1, do (Actions)
           Actions
               General - If (Conditions) then do (Actions) else do (Actions)
                   If
                       (Controller of player Counter) == User
                       (Status of player Counter) == Playing
                   Then
                       Camera - Apply Camera 001 for player Counter over 0.0 seconds with Existing Velocity% initial velocity, 10% deceleration, and Don't Include Target
                       Camera - Lock camera mouse relative mode On for player Counter
                       Camera - Turn camera mouse rotation On for player Counter
                       Camera - Turn camera height smoothing Off for player Counter
                       Camera - Turn camera height displacement On for player Counter
                   Else

Pemicu Pembaruan Kamera:

Camera Update
   Events
       Timer - Every 0.0 seconds of Game Time
   Local Variables
       Yaw = 0.0 <Real>
       CameraFocus = No Point <Point>
       Counter = 0 <Integer>
   Conditions
   Actions
       General - For each integer Counter from 1 to 8 with increment 1, do (Actions)
           Actions
               General - If (Conditions) then do (Actions) else do (Actions)
                   If
                       (Controller of player Counter) == User
                       (Status of player Counter) == Playing
                   Then
                       Variable - Set Yaw = (Current camera yaw of player Counter)
                       Variable - Set CameraFocus = ((Position of Units[Counter]) offset by 0.0 towards (Yaw + 90.0) degrees)
                       Unit - Make Units[Counter] face (Yaw + FaceOffset[Counter]) over 0.0 seconds
                       Camera - Set the camera bounds for (Player group(Counter)) to (Region((X of CameraFocus), (Y of CameraFocus), ((X of CameraFocus) + 0.01), ((Y of CameraFocus) + 0.01))) (Do Not adjust the minimap)
                   Else
Piddock Tom 'Biru'
sumber