osnacs / cg-14 Goto Github PK
View Code? Open in Web Editor NEWComputer Graphics Practicum 2014: Minecraft-like game
Computer Graphics Practicum 2014: Minecraft-like game
Es sollte ein Schatten der Sonne gezeichnet werden
Die Kamera sollte das richtige Seitenverhältnis des Fensters bekommen.
Die Kamera lässt sich nur sehr langsam bewegen wenn man stark nach unten oder oben guckt
Wenn ein neuer Chunk generiert wird, angrenzende Chunks updaten damit in der Map keine Wände entstehen.
Pro Chunk sollten mehrere VertexSeq generiert werden anstatt jeden Block einzeln zu zeichnen.
Bei der Generierung der Map sollten wir den BlockType::Air aussen vor lassen. In allen "denkbaren" Einsatzzwecken, auch derer der Luft als physikalischen "Actor/Reactor" oder in der Player-Steuerung, wäre es sinnvoller die Luftblöcke nicht als Entität in den RAM zu legen, sondern als statische (?) Referenz constant vorzuhalten. In der Player-Steuerung sollte es möglich sein einen Test auf den BlockType::Air zu umgehen - sozusagen als globaler Standard-BlockType (NULL-Wert(/Pointer) == Air (?)), so dass auch hier der Overhead verringert wird. Der Sinn liegt einfach darin, das die PC's im CIP-Pool RAM-bandbreitentechnisch nicht der Hammer sind, und so bei einer aktuellen Höhe der sichtbaren Blöcke von 10(?), nur ca. 1/13 des aktuellen RAMs benötigen würden. Dies könnte man für eine größere(& / | komplexere) Vorberechnung der Map [(10^x),(10^x)] benutzen. Gute Nacht, ich schreibe morgen weiter! :3
Fackeln sollten gerendert werden, bzw. Punkt-Lichter sollten
Wenn man im Cheatmodus, d.h. in dem Modus, in dem man herumfliegen kann, während des Laufens auf Pause "P" drückt, läuft man immer weiter. Dies lässt sich dann nur noch stoppen, wenn man das Spiel neu startet.
Das Problem war auch im FirstPersonModus und ist dort beseititg: @rwarnking
Wenn man das Spiel per X des Fenstermanagers schließt, wird ein Fehler auf der Konsole ausgegeben. Das sollte man schöner hinkriegen
Nachdem Blöcke zerstört oder gesetzt wurden, müssen die entsprechenden Chunks neu gerendert werden.
Wasser wie Seen oder Flüsse
Die Map kann man mit einem einfachen Format in einer Datei speichern.
Man sollte mit einer Taste zwischen Kamerasteuerung und Spielersteuerung umschalten können
Physics müssen integriert werden.
Es sollten Flüsse oder Seen generiert werden
Der Z-Buffer Bug, den ich euch gezeigt habe, muss behoben werden.
Hier sollte per Shift-Knopfdruck die Geschwindigkeit in der man läuft beschleunigt werden.
Die Standardpipeline fürs Rendern sollte fertig werden. D.h. alle Chunks rendern und Skydome rendern.
-Add center mark of the scene to capture the object in front (at hand reach)
-Player get the position of this object and can destroy the marked object with a key.
Z-Buffer für das Environment
Wenn man als Player den unteren Rand der Map erreicht ( y = 0) stürzt das Programm ab.
Der Chunk Generator sollte eine Spectator Position von außen bekommen und in Abhängigkeit davon mehrere Chunks generieren.
Erstmal reichen die aus Minecraft, später wollen wir dann schönere Texturen
Currently the player only collides with blocks on the ground. Trees generate flying blocks with which the player should collide too.
Man sollte den Spieler steuern können. Es ist wahrscheinlich noch schwer irgendwie eine sinnvolle "Phsyik" einzubauen, dass der Spieler immer auf dem Boden läuft. Man kann daher erstmal es so implementieren, als wenn der Boden auf Ebene x (z.B. 0) ist.
FPS Ausgabe verbessern, indem nicht nur das Delta des jetzigen Frames genommen wird, sondern ein Mittel aus den letzten X deltas. So bekommen wir viel genauere FPS Zahlen
Sollte die Position ändern und nicht drehen
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.