Кіріспе

Видео ойындардағы оқ-дәрілердің соқтығысу жүйесі

Hitscan – видео ойындар дизайнында, көбінесе бірінші тұлғадан ату ойындарында қолданылатын, нысанға тигенін анықтау үшін, ату құралының бағыты тікелей нысанаға қаратылғандығын сканерлейтін және содан кейін құралдың әсерін (әдетте зақымды) дереу қолданатын соқтығысу жүйесінің түрі. Мысалы, қару ойыншының басқаруын қажет ететін оқ-дәріні ұшпайды, ойыншының нысанасы нысанаға тигенде және ату түймесі басқанда зақым қолданылады. Ішкі жүйеде бұл көбінесе құралдың бастапқы нүктесінен "оқ-дәрінің" траекториясы бойынша сәулені модельдеу және сәулеге жанасқан кез келген нысандарды сканерлеу арқылы жасалады. Ойын техникалық тұрғыдан әсері болмаса да, оқтың визуализациясын көрсетуі мүмкін. Керісінше, оқ-дәріге негізделген қару белгілі бір жылдамдықпен виртуалды кеңістікте қозғалатын нақты оқ-дәріні ұшырады және ол нысанаға нақты тигеннен кейін ("соқтығысқанда") ғана зақым келтіреді. Өзгертілмеген hitscan ақпаратын пайдаланып, нысанаға тигенін немесе тимегенін анықтайтын қаруды көбінесе hitscan қару деп атайды. Қаруды ату hitscan функциясын шақырады, және егер оқ-дәрінің жолында нысан анықталса, соқтығысу тіркеледі. Нысанға тигені анықталғаннан кейін, жүйе нысанға қай жерден тигеніне байланысты зақымды есептейді. Әсер дереу болғандықтан, оқ-дәрілер тиімді түрде шексіз жылдамдықпен қозғалады және тура немесе басқа қарапайым траекторияға ие болады – бұл қысқа қашықтықтағы оқтың жылдамдығы мен дәлдігінің практикалық жуықтауы. Hitscan әдісін кейбір беттерді шағылыстыратын, hitscan сәулелерін тоқтатусыз мәңгіге созуға немесе бір сызықта бірнеше нысанға бір уақытта енуге мүмкіндік беру арқылы өзгертуге болады. Реализмді арттыру үшін бағдарламашылар hitscan функциясын сәл өзгеше жолдармен қолдануы мүмкін; мысалы, есептелген траекторияға кездейсоқ өзгерістер енгізу арқылы дәлсіздікті модельдеу. Мұның қарапайым нұсқасы бірінші тұлғадан атушы DOOM-да кездеседі; ойыншы тапаншамен ату түймесін ұстап тұрғанда, екінші оқтан бастап дәлсіз ату бастайды. Тағы бір мысал ретінде, Half Life 2-дегі автоматтары "жарылысқан қару" анимациясының ортасында hitscan функциясын шақырады, бұл қаруды қолдану мен нысанаға тию арасындағы шағын кешігуді тудырады, бұл нақты өмірдегі баллистикаға жақын болуға көмектеседі.

Артықшылықтар

Негізгі артықшылығы – симуляцияның қарапайымдылығы, ол оқтардың тиюін есептеу үшін салыстырмалы түрде қарапайым математика қолданады. Оқтар шексіз жылдамдықпен түзу сызық бойымен қозғалмаса да, олардың жылдамдығы соншалықты жоғары, сондықтан оқ тигізуді анықтау әдісі көбінесе дұрыс жуықтау болып табылады. Бұл қарудың қай жерге тигенін анықтау мәселесін бір ғана функцияға түсіреді, соның арқасында қаруды бағдарламалау оңайлатылады. Ойын дизайны тұрғысынан, бұл себепті (ойыншы "ату" батырмасын басып, оқ тигізуді анықтау функциясын іске қосады) және салдарды (оқ тигізуді анықтау нәтижесін қайтарады, ойыншы сол жерде қарудың әсерін көреді) тікелей байланыстырады. Нақты әлемдегі баллистиканың өте қарапайым моделі ретінде, ол ойынды қолжетімді етеді, себебі нысанаға оқ жеткенге дейін кететін уақытты ескеру үшін жылжымалы нысананы сәл алдын ала бағыттаудың қажеті жоқ. Бұл модель реалистік болмаса да, ойын ойнау үшін нақты қаруды қолдануды түсінудің қажеті жоқ, және нұсқаушы белгі қай жерге бағытталса, сонда оқ тиеді деген интуитивті түсінікті күшейтеді.

Кемшіліктер

Атыс қаруының атыс әсерін визуалды түрде көрсету қиын болуы мүмкін: қару нысанаға бірден тигендіктен, қарудан шыққан кез келген оқ немесе снаряд тек «көлеңке» болып табылады және оның түскен жері нақты тиген жерін көрсетпеуі мүмкін. Әсіресе, снарядтың әсері әрқашан тиген сәттен кейін болады, бұл мәселе онлайн көп ойыншылы ойындардағы интернет жекелейленуімен күшейеді. Оқтың бағытын қарудан шыққаннан кейін жел және гравитация сияқты факторлармен өзгерту қиын. Бірақ ол бірден нысанаға тиетін сәуле ретінде атылғандықтан, бағытында ешқандай өзгеріс болмайды. Мысалы, үлкен жылдамдықпен қозғалатын нысананы алыс қашықтықтан атуды қарастырайық. Hitscan (бірден тиетін) қарумен нысанаға дәл бағытталған ойыншы оны тигізеді. Ал егер бұл нақты ату жүйесі болса, нысананы алдын ала бағыттау қажет болар еді. Hitscan оқтарында нақты оқтың баллистикасы немесе қозғалысы болуы мүмкін емес. Кейбір ойындарда hitscan және оқтың баллистикасы екеуі де қолданылады, бірақ бір уақытта емес. Кейбір ойындарда hitscan әдісімен тиген жер анықталып, содан кейін оқтың баллистикасымен анимация көрсетіледі. Процессорлардың қуаты мен интернет жеделдігінің артуымен, нақты уақыт ойындарында нақты қарулардың баллистикалық қасиеттерін модельдеу мүмкін болды, яғни оқтарды массасы мен жылдамдығы бар нақты ойын объектілері ретінде жасап, нысанаға жеткенше оларды үздіксіз симуляциялауға болады.