Video o'yinni qanday kodlash mumkin: 12 qadam (rasmlar bilan)

Mundarija:

Video o'yinni qanday kodlash mumkin: 12 qadam (rasmlar bilan)
Video o'yinni qanday kodlash mumkin: 12 qadam (rasmlar bilan)
Anonim

Video o'yinini yaratish juda katta ish, lekin yakuniy natija siz bajargan kodlash loyihasi bo'lishi mumkin. Siz dasturlash bilim darajangizga mos keladigan vositalardan ko'p narsani o'rganasiz, shuning uchun noldan boshlash eng yaxshi variant deb o'ylamang. Dasturlash tilini, integratsiyalashgan rivojlanish muhitini va/yoki o'yinni yaratish dasturini tanlang, uni ochish yoki o'quv qo'llanmasini o'qib bo'lgandan keyin o'n besh daqiqa ichida aniqlay olasiz.

Qadamlar

2 -qismning 1 -qismi: Dvigatel tanlash

Video o'yinni kodlash 1 -qadam
Video o'yinni kodlash 1 -qadam

Qadam 1. O'yin dvigatellari haqida bilib oling

Ko'pgina video o'yinlar, har bir narsani noldan kodlamasdan, voqealar, belgilar va boshqalarni "skript qilish" imkonini beradigan maxsus dvigatel yordamida amalga oshiriladi. To'liq o'yin dvigatelini noldan yaratish yillar talab qilishi mumkin, shuning uchun ko'pchilik mustaqil ishlab chiquvchilar mavjud dvigateldan foydalanadilar. Siz dasturlashda qanchalik qulay ekanligingizga va kichik detallarga qancha vaqt sarflashni xohlayotganingizga qarab, ushbu bo'limda faqat quyidagi bosqichlardan birini bajarishingiz kerak bo'ladi.

Video o'yinni kodlash 2 -qadam
Video o'yinni kodlash 2 -qadam

2-qadam. O'yin ishlab chiqaruvchi oddiy dasturni ko'rib chiqing

Bu vositalar juda oz dasturiy bilimlarni talab qiladi, shuning uchun agar siz o'yinni kodlash jihatlari bilan qiziqsangiz, ular siz uchun bo'lmasligi mumkin. Boshqa tomondan, sho'ng'ishga to'g'ri yondashish sizga o'z o'yiningiz haqida ko'p narsalarni o'rgatishi mumkin va siz katta prototipga o'tishdan oldin yuqori darajadagi kontseptsiyani o'zgartirishga imkon beradi. Bu erda bir nechta bepul variantlar mavjud:

  • Mobil o'yinlar uchun MIT App Inventor yoki Game Salad -ni sinab ko'ring
  • Brauzer o'yinlari uchun Scratch yoki Snapning jiddiy versiyasini sinab ko'ring! kirish dasturlash vositasi sifatida mo'ljallangan
  • Sarguzashtli o'yinlar uchun Visionaire -dan foydalaning.
  • Agar siz dasturlash kodini o'rganishni xohlasangiz, sudrab tashlash dasturini xohlasangiz, GameMaker-ning bepul versiyasini sinab ko'ring.
Video o'yinni kodlash 3 -qadam
Video o'yinni kodlash 3 -qadam

Qadam 3. Ko'proq professional rivojlanish interfeyslarini sinab ko'ring

Bu noldan boshlamasdan, qo'llaringizni iflos qilish, o'yinni kodlash tajribasini olish uchun ajoyib variant. Ko'p professional mustaqil o'yin ishlab chiqaruvchilari shu darajadan boshlaydilar. Ko'p dvigatellar va integratsiyalashgan rivojlanish muhitlari (IDE) mavjud bo'lsa -da, quyidagilar bepul va o'rganish osonroq:

  • Mobil o'yinlar uchun: ProjectAnarchy
  • Har qanday platformadagi 3D o'yinlar uchun: Birlik
  • Murakkab kodlash uchun: LWJGL (Java -da), SFML (C ++ da)
Video o'yinni kodlash 4 -qadam
Video o'yinni kodlash 4 -qadam

Qadam 4. O'z dvigatelini yaratish uchun vositani tanlang

Agar sizda dasturlash bo'yicha ba'zi bilimlar bo'lsa va o'z dvigatelingizni qurishga tayyor bo'lsangiz, bu erda boshlash uchun bir nechta joy. Agar bu sizning birinchi urinishingiz bo'lsa, sizga darsliklar kerak bo'ladi

  • ActionScript sizga Flash-ga asoslangan dvigatel yaratishga imkon beradi. Bu o'rta dasturchilar uchun yaxshi joy.
  • Java -ni o'rganish nisbatan sodda. Sizga Java Development Kit (JDK), bundan tashqari Eclipse yoki Java uchun boshqa integratsiyalashgan rivojlanish muhiti (IDE) kerak bo'ladi. Agar siz qanday boshlashni bilmasangiz.
  • Agar siz allaqachon dasturlash tilini bilsangiz (ayniqsa, C tili yoki Python), bu til uchun IDE qidiring. U kompilyatorni va shu loyihadagi grafik, audio va boshqa kodlar bilan oson ishlash qobiliyatini o'z ichiga olishi kerak.
Video o'yinni kodlash 5 -qadam
Video o'yinni kodlash 5 -qadam

5 -qadam. O'zingizning dvigatelingizni yarating

Agar siz qiyinchiliklarga dosh bera olsangiz va oldingi bosqichda ilg'or vositalardan birini tanlagan bo'lsangiz, sizga o'z tilingizga xos bo'lgan maslahatlar uchun o'quv qo'llanma, yordam forumi yoki tajribali o'yin ishlab chiqaruvchisini topishingiz kerak bo'ladi. Agar siz qaerdan boshlashni yoki nima haqida so'rashni bilmasangiz, bu erdan boshlashingiz kerak bo'lgan bir nechta asosiy komponentlar:

  • Mijozlar serveri, foydalanuvchi kirishini sharhlaydi va natijani qayta ishlaydi. Grafika va o'yin bilan jiddiy shug'ullanishdan oldin kirish tizimini to'g'ri javob berishga undang. (Agar siz tiqilib qolsangiz, "harakat tinglovchilarini" o'rganishga harakat qiling.)
  • Boshqa belgilar uchun AI, shuning uchun ular foydalanuvchining harakatlariga munosabat bildiradilar. Loyihani soddalashtirish uchun faqat belgilar harakatlansin va belgilangan yo'lda harakat qilsin.
  • Grafika ko'rsatish qobiliyati (yig'ish va grafik kartaga ko'rsatmalar yuborish).
  • O'yin bajarilgunga qadar doimiy ishlaydigan o'yin tsikli. Bu foydalanuvchi kiritishi, uni qayta ishlashi, boshqa o'yin mantig'ini (masalan, dushman harakati, fon animatsiyasi va boshlangan hodisalar) qayta ishlashi, chizish kerak bo'lgan narsani hisoblab chiqishi (ekranda ko'rsatilishi) va ma'lumotlarni grafik kartaga yuborishi kerak. Agar tizimingiz buni bajara olsa, buni sekundiga kamida 30 marta bajaring.

2 -qismning 2 -qismi: O'yinni loyihalash

Video o'yinni kodlash 6 -qadam
Video o'yinni kodlash 6 -qadam

Qadam 1. Avval kontseptsiyangizni qirib tashlang

Kod satriga tegishdan oldin, sizning o'yiningizni aniqlashga ko'p vaqt sarflang. Bu qanday janr? Bu 2D yoki 3Dmi? O'yinchi jumboqlarni echish, hikoyani kuzatish/yaratish, dushmanlarga qarshi kurash va/yoki o'rganish orqali o'yinda oldinga siljiydimi? Qancha ko'p savollarga javob bersangiz va o'z g'oyangizni qanchalik batafsil bayon qilsangiz, uzoq muddatda shuncha ko'p vaqtni tejaysiz. Agar siz kodlashni boshlaganingizdan keyin katta o'zgarish qilishga qaror qilsangiz, o'zgarish bir necha barobar ko'proq vaqt talab qilishi mumkin.

Buni asl g'oyangizga qaraganda ancha sodda qilib belgilang. Sizning o'yiningiz qanday ishlashini o'rganadigan va bir necha darajali o'ynashga imkon beradigan kichik prototip - bu ajoyib boshlanish. Tugatgandan so'ng, siz uni to'liq o'yin sifatida kengaytirish uchun asos sifatida ishlatishingiz yoki o'rganganlaringizni yangi loyihaga kiritishingiz mumkin

Video o'yinni kodlash 7 -qadam
Video o'yinni kodlash 7 -qadam

2 -qadam. Quyidagi amallarni istalgan tartibda bajaring

Bu vaqtda sizni haftalar yoki oylar kutib turgan, ammo foydali ish kutmoqda. Odamlar guruhi odatda quyidagi vazifalarni taqsimlab, bir vaqtning o'zida ular ustida ishlaydilar, har bir bosqichda har bir kishi qaysi vazifani boshlash osonroq yoki eng muhimini o'zi hal qilishi kerak bo'ladi. Quyidagi barcha bosqichlarni o'qing va sizga eng yoqadigan vazifani boshlang.

Video o'yinni kodlash 8 -qadam
Video o'yinni kodlash 8 -qadam

3 -qadam. San'at aktivlarini to'plang yoki yarating

Agar siz matnli o'yinlarni yaratmasangiz, sizga 2D tasvirlar va ehtimol 3D modellar va teksturalar kerak bo'ladi (siz modellarga qo'llanadigan naqshlar). Musiqa va ovoz effektlarini biroz kechiktirishingiz mumkin, lekin agar siz o'z o'yiningizni nashr etishni rejalashtirmoqchi bo'lsangiz, ular tavsiya etiladi. Sizning o'yiningiz yosh bo'lganida oddiy piktogramma, foydalanuvchi interfeysi va shriftlar ustuvor ahamiyat kasb etadi, lekin bu erda biroz harakat qilish o'yinchi tajribasini sezilarli darajada yaxshilaydi.

  • Internetda bepul yoki arzon san'at aktivlarini topadigan joylar ko'p. Makechool.com saytida ushbu ro'yxatni ko'ring.
  • Rassomni yollash katta o'zgarishlarga olib keladi. Agar bunga qodir bo'lmasangiz, aktivlarni o'zingiz to'plang va natijani badiiy do'stlaringizga ko'rsating yoki maslahat uchun onlayn o'yinlar yoki san'at forumlariga joylashtiring.
Video o'yinni kodlash 9 -qadam
Video o'yinni kodlash 9 -qadam

Qadam 4. Hikoya yoki taraqqiyot yoyi dizayni ustida ishlash

Buning ko'p qismi o'yin kodidan tashqarida rejalashtirish hujjatlari sifatida yoziladi, lekin hikoyaga asoslangan o'yinda dalali muloqot daraxtlari bo'lishi kerak. Hatto an'anaviy hikoyasiz o'yin ham, siz atrofni rejalashtirishingiz kerak bo'lgan rivojlanish tuyg'usiga ega bo'lishi kerak. Platformer bir qator harakatlar va qurollarni yangilashni o'z ichiga olishi mumkin, boshqotirmali o'yin esa boshqacha xususiyatlarni qo'shishi mumkin, chunki bu jumboqlarning murakkabligi va murakkabligini oshiradi.

Video o'yinni kodlash 10 -qadam
Video o'yinni kodlash 10 -qadam

Qadam 5. Darajali dizayn ustida ishlash

Kichik, oddiy darajadan yoki maydondan boshlang. O'yinchi darajadan o'tadigan yo'lni qurishga e'tibor qarating, so'ngra yonma -yon yo'llarni (ixtiyoriy), batafsilroq grafikani qo'shing va qiyinchilikni o'zgartiring (masalan, platforma balandligini sozlash yoki dushmanlarni atrofga ko'chirish).

O'yinchini maydonning keyingi joyiga yo'naltirish uchun yorug'lik manbalari va element tomchilaridan foydalaning. O'yinchilarni o'lik yoki noqulay yo'llarga kirishdan qaytarish uchun soyalardan foydalaning va dushmanlardan har ikki maqsadda ham foydalaning (o'yin sizga dushmanlarni chetlab o'tishni o'rgatganiga qarab). Yaxshi o'ylangan maydon o'yinchiga o'zini o'zi qaror qabul qilganday yoki kashfiyot qilgandek his qiladi, lekin uni nozik maslahatlar yordamida eng to'g'ri yo'nalishda boshqaradi

Video o'yinni kodlash 11 -qadam
Video o'yinni kodlash 11 -qadam

6 -qadam. Grafika sozlang va optimallashtiring

Agar siz oddiy o'yin yaratish dasturidan foydalansangiz, bu shart emas. Agar siz grafik tizimlarning oxirigacha chuqurroq kirishni xohlasangiz, siz shaderlar va zarracha effektlarini yaratishingiz yoki grafik kodni o'tib, o'yiningiz uchun kerak bo'lmagan vazifalarni olib tashlashdan boshlashingiz mumkin. Grafika deyarli har doim ishlov berish tezligini belgilaydigan bo'g'ilish nuqtasi bo'lgani uchun, hatto 2D o'yini ham grafik karta va protsessorga yukni minimallashtirish uchun optimallashtirishning muhim sozlamalarini o'tkazadi va qayta yozadi.

Video o'yinni kodlash 12 -qadam
Video o'yinni kodlash 12 -qadam

Qadam 7. O'yinchilarning fikr -mulohazalarini oling

Agar siz oddiy darajaga yoki o'yin prototipiga ega bo'lsangiz, do'stlaringizni o'yinni o'ynatib, fikr -mulohazalar bildiring. Odamlar nima qiziq deb o'ylashini va nima ularni xafa qilishini bilib oling. Keyinchalik, o'yin yanada jilolangan bo'lsa, begonalar yoki tanishlar mulohazalari halol maslahat uchun ajoyib manba bo'lishi mumkin, chunki ular sizning muvaffaqiyatingizga yoki sizni rag'batlantirishingizga kam mablag 'sarflaydi.

Tavsiya: