Reacties
- ' Beste ' is nogal subjectief. Bedoel je het gemakkelijkst te gebruiken, het snelst of het elegantst?
Antwoord
Zoiets bestaat niet als beste physics-engine. Het hangt sterk af van wat je nodig hebt. Neem Box2D als voorbeeld: het is een volledig functionele 2D Physics Engine , oorspronkelijk ontwikkeld in C ++ en geporteerd naar ActionScript. Het is geweldig voor realistische 2D-fysica-simulatie, inclusief zwaartekracht, krachten, wrijving, continue botsingsdetectie en nog veel meer.
Een engine als Box2D gaat behoorlijk wat veel van uw CPU-cycli, vooral wanneer u deze in Flash gebruikt. Het is ook niet triviaal om de juiste collider-bodies voor uw entiteiten op te zetten en te maken.
Als u dat zou willen maak een game zoals Breakout , een Engine zoals Box2D zou overdreven zijn. Een game die veel gebruikmaakt van fysica voor gameplay, zoals Totem-Destroyer , is waarschijnlijk gemakkelijker te implementeren als je een goede Physics-Engine kunt gebruiken 🙂
Er zijn ook andere implementaties zoals degene die wordt geleverd met de Flixel Game-Engine. Het is niet per se een physics-engine, maar het bevat een solide algoritme voor botsingsdetectie. De engine werkt ook de snelheid en zwaartekracht van de entiteit bij.
In de meeste gevallen zijn de tools van Flixel of soortgelijke engines goed Houd er rekening mee dat het gebruik van een fysieke engine CPU-intensief zal zijn en dat u de implementatie moet kiezen die het beste bij uw spel past.
Reacties
- Heh, totemvernietiger is leuk!
Antwoord
Als je helemaal naar box2d kijkt, wees dan kijk zeker eens naar World Construction Kit. http://www.sideroller.com/wck/
Het gebruikt een Alchemy-poort van Box2d , wat betekent dat het wordt geconverteerd van pure C-code met Alchemy, wat de prestaties echt verbetert.
Als je je game in de Flash IDE schrijft en niet in pure as3, wordt de Flash IDE in feite een level-editor door componenten toe te voegen voor op fysica gebaseerde vormen en verbindingen. Zeker de moeite waard om te bekijken uit de demo.
Als je pure as3 gebruikt, kunnen de componentklassen nog steeds van pas komen.
Als er niets anders is, spelen met de componenten in de IDE en knoeien met de demos zouden een mooie introductie zijn in het gebruik van een physics engine en een gemakkelijke manier om vertrouwd te raken met de concepten.
Answer
Box2d wordt in veel games gebruikt, ook buiten de flashwereld. Het is oorspronkelijk gemaakt in C en is geport naar een groot aantal talen, van objectief-c tot javascript.
Ik denk dat het een bewijs is van de motor die heel gemakkelijk te gebruiken is, goede documentatie heeft, tal van voorbeelden (hoewel soms in verschillende talen) en is erg snel.
Het enige nadeel is dat het beperkt is tot 2d. Maar dit nadeel is een pluspunt als je in feite een 2d-spel maakt (dat is waarschijnlijk meestal het geval in Flash World)
Answer
Zoals anderen hier hebben gezegd, is Box2D een behoorlijk vol aanbevolen physics-engine, hoewel het veel werk kost om het correct op te zetten.
En zoals anderen hier opnieuw hebben gezegd, is Box2D arbeidsintensief.
Ook kan ik bijna zeggen onmiddellijk als een game Box2D gebruikt, vanwege de manier waarop de fysica zich gedraagt.
Dus mijn aanpak is om mijn eigen kleine fysica-engine te maken die er uniek uitziet in vergelijking met andere games, waar ik gemakkelijker mee kan werken, en gemakkelijker om mijn hoofd rond te wikkelen.
Reacties
- nou, ik kan geen physics engine maken omdat ik niet weet hoe. Ik heb geleerd dat er engines zijn die APE en fisix heten, wat zou je aanbevelen?
Answer
Ga met box2d, aap- en fisix-projecten die u noemde, zijn allebei dood. Box2d voor flash heeft een van de bronnen en door het te leren leer je iets dat je bijna overal mee naartoe kunt nemen.
Ik heb games gemaakt in Ape, het was goed, maar zoals ik al zei, het is een dood project. Ik heb games gemaakt in box2d, het is meer werk vooraf, maar je opbrengsten zijn solide.
Aan de persoon die het noemde, konden ze een spel met box 2d vertellen aan de hand van hoe het voelde. Ik betwijfel echt of, als je iets zou kunnen zien, het een soort rigide lichaamsfysica-engine gebruikt, maar dat is het zon beetje.
Bekijk ook motor2, nog een box2d-poort door een heel slimme kerel.
Verzonden op iphone