Licht & Schatten auf Tilemaps
Übersicht

![]() |
hamZtaAdministratorBetreff: Licht & Schatten auf Tilemaps |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie der Titel schon sagt, handelt es sich um Lichtberechnung auf Tilemaps.
Ich habe, um die Problematik besser erklären zu können, folgende Skizze angefertigt: ![]() Wie man sehen kann, würde ich auf meiner Tilemap gerne Lichter einbauen und deren Lichtfluss berechnen können. Die Berechnung ist ja eigentlich kein Problem. Ich sende, ähnlich einer Raycaster-Engine, Strahlen (Rays) aus. Diese Rays haben eine begrenzte, einstellbare Reichweite (Lichtstärke) und werden, wenn sie auf eine Wand stoßen, unterbrochen. Soviel zur Berechnung, mein Problem liegt eher an dem Zeichnen des Lichtes. Wenn ich nur die Tiles erhelle, über die die Rays kommen, hab ich zwar den gewünschten Effekt - allerdings ziemlich hässlich dargestellt (da ein Licht nunmal keine harten Grenzen hat ![]() Noch eine Anmerkung: Das Licht muss nicht dynamisch und zur Laufzeit berechnet werden (wäre sowieso viel zu langsam). Vielen Dank im Voraus. hamZta |
||
Blog. |
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum dann nicht beim MapEditor eine Compile Funktion und
dabei eine Shadow, Lightmap erzeugen? Sonst guck doch mal bei CS 2D ob dir das reicht wie es DC dort gelöst hat. Vielleicht kannst du es auch etwas komplizierter lösen, es gibt sicherlich noch andere Möglichkeiten, diese ist mir aber gerade so eingefallen, bei der Umsetzung bräuchte ich auch nen bissl. Durchaus Interessant wäre diese Möglichkeit wenn du die Lightmaps erzeugen lässt. Du Prüfst zuerst auf Kollision per Raytrace. das sollte ja kein Problem sein, dann erstellst du aus deiner Maske die du nun geprüft hast convexe Objekte, beispielsweise Dreiecke. Kannst nun jedem Dreieck einen Wert zuweisen, der den Abstand zum ursprünglichen Licht beschreibt. Dazu bietet sich evtl. der Mittelpunkt des Dreiecks an. Umso größer der Abstand und umso kleiner die Lichtstärke, desto dunkler ist die Fläche gefärbt. (Logisch oder?) Füllen kannst du die Körper im Fächerverfahren oder ein anderes das dir gerade einfällt ![]() Hier noch eine kleine Illustration. ![]() Jaja, es gibt sicherlich andere leichtere Möglichkeiten, diese finde ich aber recht interessant auch wenn sie recht schwierig umzusetzen ist. Ich hoffe ich konnte dir helfen, das würde mich auch mal interessieren, vielleicht fange ich übermorgen mal damit an ähnliches zu proggen. EDIT: Hiermit ( https://www.blitzforum.de/foru...t=schatten ) kannst du nichts anfangen? IMurDOOM |
||
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dieser Thread http://www.blitzbasic.com/Comm...opic=48928 und der darin verlinkte Softshadows Artikel auf GameDev.net sind wärmstens zu empfehlen für 2D Schattenwurf. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielen Dank für die Mühe & die Links, ich werde sie mir nach der Matura (Abitur ![]() |
||
Blog. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group