Бейне ойынды қалай бағдарламалау керек: 10 қадам (суреттермен)

Мазмұны:

Бейне ойынды қалай бағдарламалау керек: 10 қадам (суреттермен)
Бейне ойынды қалай бағдарламалау керек: 10 қадам (суреттермен)
Anonim

Телефондар, браузерлер, компьютерлер, консольдер: бейне ойындар бұрынғыдан да танымал және кең таралған. Сіз бұрынғыдан да көп оқулықтар, активтер жиынтығы, ойын жасауға арналған бағдарламалық құралдар мен сарапшылардың кеңестерін таба аласыз. Өз ойын бағдарламалау әлі де шеберлік пен шыдамдылықты қажет етеді, бірақ кез келген деңгейдегі кодер үшін ресурстар жеткілікті.

Қадамдар

2 бөлімнің 1 бөлігі: Жұмысты бастау

Бейне ойын бағдарламалау 1 -қадам
Бейне ойын бағдарламалау 1 -қадам

Қадам 1. Ойын қозғалтқышын қарастырыңыз

Бірнеше ойын әзірлеушілер дөңгелекті қайта ойлап табады және өздерінің ойын қозғалтқышын нөлден жазады, әсіресе бірінші ойынға. Егер сіз суға түскіңіз келсе, бірақ әлі де бағдарламалауға мүмкіндіктеріңіз көп болса, ойын қозғалтқышын пайдалану - жақсы нұсқа. Қозғалтқыш әдетте 3D модельдерін өзгертуге, оқиғаларды сценарийлерге және ойынға арналған басқа да кең таралған қосымшаларға арналған жоғары деңгейлі құралдарды қамтиды, бірақ әлі де көптеген бағдарламалау мүмкіндіктерін береді.

Бағдарламалаудың ауыр мысалдарына Unity, UDK, Unreal Engine 4 және CryENGINE кіреді

Бейне ойын бағдарламалау 2 -қадам
Бейне ойын бағдарламалау 2 -қадам

Қадам 2. Рамка мен басқа құралдарды қолданыңыз

Рамка - бұл ойын қозғалтқышының астындағы қадам, бірақ уақытты үнемдеуге және кодтау жобаларын оңтайландыруға арналған құралдар мен API интерфейстерін ұсынады. Бұл бірінші ойын жобасы үшін қолданылатын бағдарламалық жасақтаманың ең төменгі деңгейін қарастырыңыз, сонда да сіз өзіңізді бағдарламашы ретінде таныстыруға немесе ойын қозғалтқыштарындағы сахнаның артындағы жұмысқа қызығушылық танытуға тиіссіз. Сіз қолданатын нақты құрылымға және/немесе ойын қозғалтқышына байланысты сіз кейбір жұмыстарды қосымша 3D графикасын құруға арналған танымал OpenGL сияқты қосымша мамандандырылған API -де орындағыңыз келуі мүмкін.

Polycode, Turbulenz және MonoGame - бұл 2D және 3D ойындарын ескере отырып жасалған рамкалардың мысалы

Бейне ойын бағдарламалау 3 -қадам
Бейне ойын бағдарламалау 3 -қадам

Қадам 3. IDE қолданып көріңіз

Дамудың интеграцияланған ортасы-бұл күрделі бағдарламалау жобаларын құруды жеңілдететін жалпы мақсаттағы компилятор және бастапқы файлдардың жинағы. IDE ойынды бағдарламалауды әлдеқайда ыңғайлы етеді, әсіресе егер ол графикалық және аудио жүйелермен өзара әрекеттесудің кіріктірілген әдістерімен келсе.

Visual Studio және Eclipse - бұл екі мысал, бірақ басқалары көп. Сізге таныс тілге негізделген IDE іздеңіз

Бейне ойын бағдарламалау 4 -қадам
Бейне ойын бағдарламалау 4 -қадам

Қадам 4. Бағдарламалау тілін үйреніңіз

Жоғарыда аталған құралдардың көпшілігі танымал бағдарламалау тіліне негізделген, сондықтан ілеспе оқулықтарды орындау сізге керемет бастама береді. Сіз кез келген дерлік жеткілікті қуатты бағдарламалау тілінде ойын құра алсаңыз да, ең көп таралған тілдер барлық құрылғылар үшін C ++ немесе C#, браузерлер үшін Flash ActionScript немесе HTML5, мобильді құрылғылар үшін Java немесе Objective C. Егер сіз ақырында бар ойын студиясына жалдағыңыз келсе, бұл жақсы нұсқалар, бірақ көптеген тәуелсіз ойындар Python, Ruby немесе JavaScript көмегімен жасалады.

2/2 бөлімі: Ойын құру

Бейне ойын бағдарламалау 5 -қадам
Бейне ойын бағдарламалау 5 -қадам

Қадам 1. Ойынның жоспарын құрыңыз

Ойынның жанры, көңіл -күйі мен түрін қосқанда, ойынның түсінігін мүмкіндігінше ашыңыз. Егер сіз тұжырымдама түсініксіз бағдарламалауды бастасаңыз, онда сіз жұмыстың едәуір көлемін бөлшектеуге және қайта жазуға тура келеді. Бұл бәрібір болуы мүмкін, бірақ нақты жоспар бұл оқиғаларды минимумға дейін төмендетеді.

Эксперименттік ойындардан басқаларының барлығында прогресс доғасы бар, сондықтан бұл жоспарлауды бастау үшін жақсы орын. Прогресс әдетте төмендегілердің біреуі немесе бірнешеуі арқылы жүреді: сюжет пен кейіпкерлер туралы көбірек білу, сюжетке әсер ететін шешімдер қабылдау, жаңа қабілеттерге немесе жоғары статистикаға ие болу, жаңа аймақтарды зерттеу немесе қиын және қиын жұмбақтарды шешу

Бейне ойын бағдарламалау 6 -қадам
Бейне ойын бағдарламалау 6 -қадам

Қадам 2. Өнер активтеріңізді жинаңыз

Ойынға қажет барлық текстураларды, спрайттарды, дыбыстарды және модельдерді жинаңыз немесе жасаңыз. Ақысыз ойын активтерінің бірнеше жиынтығы бар, сондықтан кейбіреулер іздеңіз. Егер сіз 2D ойын жасап жатсаңыз және сізге көмектесетін суретші болмаса, сіз өзіңіздің пиксельдік өнеріңізді жасай аласыз.

Бейне ойынды бағдарламалау 7 -қадам
Бейне ойынды бағдарламалау 7 -қадам

3 -қадам. Ойынның сценарийін жазыңыз

Сценарий қозғалтқышқа не істеу керектігін және қашан істеу керектігін айтады. Егер сіз ашық бастапқы қозғалтқышты қолдансаңыз, онда оның сценарий тілі бар болуы мүмкін, және, мүмкін, сізге оны қолдануға үйрететін оқулықтар бар. Егер сіз өзіңіздің қозғалтқышты құрсаңыз, сізге сценарий тілін жасау қажет болады. Қалай болғанда да, сізге бұл негізгі компоненттер қажет:

  • Пайдаланушының енгізуін тексеретін, нәтижені өңдейтін, басқа оқиғаларды өңдейтін, көрсетілуі қажет нәрсені есептейтін және оны графикалық картаға жіберетін, үнемі жұмыс істейтін ойын циклы. Бұл секундына кемінде 30 рет орындалуы керек.
  • Оқиғаларды тексеретін және олар болған кезде жауап беретін «белсенді тыңдаушы» сценарийлері. Мысалы, бір сценарий есікпен әрекеттесетін ойыншыны бақылай алады, содан кейін «ашық» анимацияны іске қосады және есікті қақтығыстыруға болмайды. Басқа сценарий қару -жарақ хитбоксының есікке тиетінін қадағалай алады және оның орнына «бөліну» анимациясын іске қосады.
Бейне ойынды бағдарламалау 8 -қадам
Бейне ойынды бағдарламалау 8 -қадам

4 -қадам. Жеке деңгейлерді жасаңыз

Деңгейлік дизайн - бұл «1 -деңгей», ойыншы зерттей алатын аймақ немесе жауынгерлік ойынның келесі кезеңі болуы мүмкін - бағдарламалауға қатысы жоқ кейбір дағдыларды тексереді. Қоршаған ортада саяхаттауды қамтитын жанрларға арналған негізгі нұсқаулықты сақтай отырып, әдеттегі геймплей көрсететін қарапайым деңгейден бастаңыз:

  • Аймақтың негізгі контурын құрыңыз.
  • Ойыншы көбінесе осы аймаққа баратын негізгі жолды шешіңіз. Осы жолда қиындықтар мен артықшылықтарды (элементтерді) қосыңыз. Адреналин мен толқу үшін оларды бір -біріне жақын орналастырыңыз, не болмаса біршама босаңсыған атмосфера үшін.
  • Графикалық элементтерді қосуды бастаңыз. Жарық көздерін негізгі жолдың бойына қойыңыз, бұл ойыншыларды оны ұстануға шақырады және бүйірлік жолдарды немесе маңызды емес аймақтарды күңгірттендіреді.
  • Ойынның стилі мен параметріне сәйкес келіңіз. Мысалы, қорқынышты қорқынышты ойын күтпеген шабуылдардан кейін бос барлауда дамиды. Дұшпандардың толастамайтын толқыны ойыншыны адреналинмен толтырады, ал мұқият тактикалық жоспарлауды қажет ететін жекпе-жек ойыншыны эмоционалды атмосферадан алшақтатуы мүмкін.
Бейне ойын бағдарламалау 9 -қадам
Бейне ойын бағдарламалау 9 -қадам

5 -қадам. Ойынды тексеріңіз

Енді сіз өзіңіздің барлық ауыр жұмысыңыздың немен аяқталғанын көре аласыз. Әр деңгейді жылтырату кезінде және оны «аяқтағаннан» кейін бірнеше рет тексеріңіз. Ойынды ойластырылмаған түрде ойнауға тырысыңыз, мысалы, алдымен қиын жерлерде ойнаңыз. Ең дұрысы, ойынға жаңа көзқараспен қарау үшін ойыншыларды табыңыз және мүмкіндігінше кері байланыс сұраңыз.

  • Біреуге кеңес берместен ойнауды қараңыз, егер бұл ойынға әлі қосылмаса. Қателіктер мен ойыншының «тығырыққа тірелуі» мүмкін ұпайлар - бұл сізге қосымша нұсқаулық қажет екенін көрсетеді.
  • Ойын (немесе кем дегенде деңгей) жеткілікті түрде аяқталғаннан кейін, ойнауға көмектесу үшін бейтаныс адамдарды немесе таныстарды табуға тырысыңыз. Достар оптимистік болады, бұл жігерлендіру үшін өте жақсы, бірақ ойыншылардың қалай әрекет ететінін болжауға көмектеспейді.
Бейне ойын бағдарламалау 10 -қадам
Бейне ойын бағдарламалау 10 -қадам

Қадам 6. Келесі қадамды жасаңыз

Егер сіз жобаны аяқтасаңыз, оны тегін шығарғыңыз немесе сатылымға шығарғыңыз келуі мүмкін, бірақ сіз кез келген ойын қозғалтқыштары мен бағдарламалық жасақтаманың шарттары мен шарттарын оқығаныңызға көз жеткізіңіз. Ойынды ойлағаныңыздай аяқтасаңыз да, аяқтамасаңыз да, сіз өзгеше немесе өршіл жобаның кейбір активтері мен идеяларын «каннибализациялауды» немесе алған сабақтарыңызды қайталап, қайтадан бастағыңыз келуі мүмкін!

Бейне - бұл қызметті пайдалану арқылы кейбір ақпарат YouTube -пен бөлісілуі мүмкін

Кеңестер

  • Графика 3-D болуы міндетті емес. Pokemon, Mega man және Tetris сияқты қарапайым графика әлі де адамдарды қызықтырады.
  • Әрқашан «қажет болуы мүмкін» немесе «кейін қажет болады» дегеннің орнына қазір қажет нәрсені жазыңыз.
  • Дөңгелекті қайта ойлап таппаңыз. Егер сізге қажет нәрсені орындайтын кітапхананы импорттай алатын болсаңыз, оған барыңыз немесе өзіңіздің жеке кітапханаңызды құруға үлкен себеп бар екеніне көз жеткізіңіз.

Ұсынылған: