Wolfenstein 3D engine

  • github.com/id-Software/wolf3d
Уреди на ВикиподацимаНаписан уC, x86 assembly languageПлатформаDOS, Xbox 360, PlayStation, Microsoft WindowsТипПокретач видео игреВеб-сајтidsoftware.com

Wolfenstein 3D engine је покретач игре који користи Wolfenstein 3D. Највећи део овог покретача је програмиран од стране Џона Кармека. Написан је у C и x86 assembly програмском језику. Има карактеристичну графику (ray casting), звук (PCM и IMF), физику играча и контролу игре.

Карактеристике и ограничења

Једноставан raycasting редер је сличан оној која се користи у Wolfenstein 3D engine. Црвена тачка је локација играча. Подручје наранџасте представља видљиви део света у оквиру field of view играча.

Да рендерује зидове у pseudo-3D, игра користи ray casting. Ова техника емитује један зрак за сваку колону пиксела, проверава да ли сече зид и извлачи текстуре на екран у складу са тим, стварајући једнодимензионалну дубину бафера против којих се снимак на скалираном спрајту (sprite) представљаја непријатеља, појачања и реквизите.

Пре Wolfenstein 3D, технологија је већ била у употреби од стране id Software још 1991. за креирање Hovertank 3D и Catacomb 3-D за Softdisk. Остале игре користе Wolfenstein 3D покретач игре или деривате који су такође направљени, укључујући Blake Stone, Corridor 7: Alien Invasion, Operation Body Count, Super 3D Noah's Ark, Rise of the Triad, и Hellraiser, једну не издату игру Color Dreams која је била планирана за PC и за Nintendo Entertainment System. Успех овог покретача је такође инспирисао бројне имитаторе као што су Ken's Labyrinth, Nitemare 3D, Isle of the Dead, и Pie in the Sky покретач.

Према програмеру id Software-а, Џону Кармаку, покретач игре је био инспирисан технологијом демо верзије Ultima Underworld: The Stygian Abyss из 1991. године. Кармек је тврдио да је могао брже да рендерује.[1] У овоме је био успешан. Wolfenstein 3D покретачу недостају многе функције које су присутне у Underworld покретачу, као што су плафонске или висинске промене спрата, нагнути подови, зидови, закривљене и осветљење, али и рад на релативно слабом хардверу.

Тајна перформанси овог покретача је вертикални scanline алгоритам скалирања. За разлику од наредних покретача и хардвера, текстура координира за пиксел и не обрачунава се у току рада. Уместо тога, фиксни скуп од неколико стотина рендеринг функција се генерише приликом покретања игре (или прозора величине промена) у којој су фиксне све меморијске компензације. Да би се број ових поступака држао на ниском нивоу, висина је квантизирана, која се може лако видети када је играч близу зида, али када не гледа под правим углом.

Укључене карактеристике:

  • Sprites користи се за објекте
  • Текстурни зидови
  • Знатно смањује коришћење процесора у поређењу са осталим покретачима.

Ограничења овог покретача:

  • Гледање и/или кретање горе и доле није могуће.
  • Не подржава разлику јачине осветљења .
  • Не подржава разлику геометријске висине.

"Holo-walls" су зидови направљени од стране креатора мапа користећи "баг" у покретачу PC верзија тог покретача. Они су направили зидови кроз које играч може пролазити, и користе се у неким укупним конверзијама да симулира прозоре на које играчи могу да се пењу преко живе ограде, такође играчи могу пролазити кроз њих. Један од начина стварања Holo-зидова је да се постави "мртви стражар" у зиду.

Игре које користе Wolfenstein 3D engine

Игре које користе Wolfenstein 3D engine - покретач
  • Wolfenstein 3D (1992)
  • Spear of Destiny (1992)
  • Blake Stone: Aliens of Gold (1993)
  • Operation Body Count (1994)
  • Corridor 7: Alien Invasion (1994)
  • Super 3D Noah's Ark (1994)
  • Blake Stone: Planet Strike (1994)
  • Rise of the Triad (1994)
    • Extreme Rise of the Triad (1995)

Rise of the Triad је веома модификована верзија Wolfenstein 3D покретача који користи неки старији код од Doom покретача.[2]

Претходници

Неколико игара користи технологију коју је развио Џон Д. Кармек пре Wolfenstein 3D, све су оне издате од стране Softdisk уз услове  id-овог уговора; Catacomb 3D наставци нису направљени од стране id Software, како год. Wolfenstein 3D покретач је директан наставак покретача које користе ове игре, иако велики део кода је оптимизован и очишћен од свих раних база, као и допунама карактеристичним за VGA графике (насупрот EGA) дигитализована звучна подршка (насупрот PC speaker или AdLib Music Synthesizer Card); texture mapping-мапирање такође није презентовано у Hovertank 3D, и тако су сви зидови били солидних боја. Изворни код за Hovertank и Catacomb 3D издати су јуна 2014. од стране Flat Rock Software под GNU General Public License (ГНУ-ова општа јавна лиценца) на начин сличан који су радили id и њихови партнери.[3]

  • Hovertank 3D
  • Catacomb 3-D
  • Catacomb Abyss
  • Catacomb Armageddon
  • Catacomb Apocalypse

Види још

Референце

  1. ^ Mallinson, Paul. (2002).
  2. ^ The Rise of the Triad source code from 3drealms.com - released December 20, 2002 under the GNU General Public License
  3. ^ Larabel, Michael (June 6, 2014). "id Software's Softdisk Open-Sources Some Really Old Games".

Спољашње везе

  • Source code[мртва веза]
  • Engine source code and compiling instructions
  • DieHard Wolfers Forum - Forum about Wolf3D and programming
  • п
  • р
  • у
Бесплатни или
отвореног кода
2D
  • Adventure Game Studio
  • Beats of Rage
  • Box2D
  • Chipmunk
  • Cocos2d
  • Digital Novel Markup Language
  • Flixel
  • Game-Maker
  • Gosu
  • Jogre
  • KiriKiri
  • Moai
  • OpenFL
  • OpenRA
  • ORX
  • Pygame
  • Ren'Py
  • StepMania
  • Stratagus
  • Thousand Parsec
  • VASSAL
  • Xconq
2.5D
  • Aleph One
  • Build
  • Cube
  • Doom
  • Flexible Isometric Free
  • Wolfenstein 3D
3D
  • Away3D
  • Axiom
  • Blender Game
  • Cafu
  • Crystal Space
  • Cube 2
  • Delta3D
  • Dim3
  • Genesis3D
  • GLScene
  • Horde3D
  • HPL 1
  • Irrlicht
  • id Tech 3
  • id Tech 4
  • JMonkey
  • Luxinia
  • OGRE
  • Ogre4j
  • Open Wonderland
  • Panda3D
  • Papervision3D
  • Platinum Arts Sandbox Free 3D Game Maker
  • PlayCanvas
  • PLIB
  • Python-Ogre
  • Quake
  • Quake II
  • RealmForge
  • Retribution
  • Torque 3D
Mix
  • Allegro
  • Construct Classic
  • Godot
  • Lightweight Java Game Library
  • Spring
  • Visualization Library
Власнички
2D
  • Coldstone
  • Construct 2
  • Corona
  • CRX
  • Fighter Maker
  • Filmation
  • GameMaker
  • GameMaker: Studio
  • Garry Kitchen's GameMaker
  • Generic Tile
  • Gold Box
  • MADE
  • Mscape
  • M.U.G.E.N
  • NScripter
  • RPG Maker
  • Sim RPG Maker
  • Sound Novel Tsukūru
  • Southpaw
  • Stencyl
  • Vicious
  • Virtual Theatre
  • V-Play
  • Z-machine
  • Zillions of Games
  • ZZT
2.5D
  • Genie
  • INSANE
  • Jedi
  • Pie in the Sky
  • Super Scaler
  • UbiArt Framework
3D
  • 4A
  • Advance Guard Game
  • Anvil
  • Arsys
  • Beelzebub
  • Bork3D
  • BRender
  • C4
  • Chrome
  • Clausewitz Engine
  • Creation
  • CryEngine
  • Crystal Tools
  • Dagor
  • Diesel
  • Digital Molecular Matter
  • Disrupt
  • Dunia
  • EAGL
  • EGO
  • Elflight
  • Enforce
  • Enigma
  • Essence
  • Flare3D
  • Fox
  • Freescape
  • Frostbite
  • Geo-Mod
  • GoldSrc
  • HeroEngine
  • HydroEngine
  • HPL 2-3
  • id Tech 5
  • id Tech 6
  • Ignite
  • Iron
  • IW
  • Jade
  • Kinetica
  • LS3D
  • Leadwerks
  • LithTech
  • Luminous Studio
  • LyN
  • Marmalade
  • Mizuchi
  • MT Framework
  • NanoFX GE
  • Outerra
  • Panta Rhei
  • PhyreEngine
  • Q
  • Real Virtuality
  • REDengine
  • Refractor
  • RenderWare
  • Revolution3D
  • Riot
  • RAGE
  • SAGE
  • Serious
  • Shark 3D
  • ShiVa
  • Silent Storm
  • Sith
  • Source
  • Titan
  • TOSHI
  • Truevision3D
  • Unigine
  • Unity
  • Unreal
  • Vision
  • Visual3D
  • Voxel Space
  • XnGine
  • X-Ray
  • YETI
  • Zero
Mix
  • CPAGE
  • Dark
  • Gamebryo
  • Hybrid Graphics
  • Kaneva Game Platform
  • Metismo
Власнички
полупогони
  • Euphoria
  • Gameware
  • GameWorks
  • Havok
  • iMUSE
  • Kynapse
  • Quazal
  • SpeedTree
  • Xaitment