Gummiband-Scrolling
Übersicht

![]() |
HubsiBetreff: Gummiband-Scrolling |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da ich nicht recht wußte in welches Forum diese Bitte zu stecken sei, möge man mir gnädigst vergeben sollte meine Wahl unglücklich sein und es passend verschieben. Danke ![]() Ich bin mir etwas unschlüssig über Sinn oder Unsinn folgender Idee: Jeder kennt ja das gewöhnliche scrollen in einem 2D-Game. Innerhalb eines gedachten Rechtecks bewegt sich die Spielfigur auf dem Bildschirm, ginge es darüber hinaus wird die Map gescrollt und das Männicken bleibt "stehen". Meine Idee dazu um das ganze etwas weicher wirken zu lassen war jetzt die Map quasi an Gummibändern zu befestigen, sprich das Scrolling beschleunigt und bremst wenn man so will. Voller Tatendrang habe ich das auch gleich ausgearbeitet und bin mir jetzt wo ich es live sehe nicht mehr sicher ob sich sowas unters Volk bringen läßt ohne auf dem Scheiterhaufen zu landen. Wer sich`s antun will um mir seine Meinung zur Sache zu unterbreiten kann hier das Muster downloaden (900 KB): https://www.blitzforum.de/upload/file.php?id=10808 Das Viehzeug wird mit einem Sprung auf den Kopf zermatscht um Platz zum scrollen zu haben. Die Tastenbelegung ist bisweilen noch fest (zum probieren wirds aber reichen ![]() Laufen und klettern -> Pfeiltasten Springen -> Linke Shift Schiessen -> Linke Strg Schalter bedienen -> <> Wäre super wenn ich ein paar Meinungen zu der Form von Scrolling bekommen könnte. Selbst bin ich leider total unschlüssig dazu ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich find's ziemlich grausig, vor allem weil es unmöglich ist zu sagen, wo und wann die Kamera Bewegung einsetzt. Entweder die Kamera sollte statisch bleiben und wenn der Spieler den Rand erreicht zum nächsten Kartenabschnitt weiter scrollen oder dem Spieler konsistent folgen (mit oder ohne Verzögerung).
Schön, wie viel Mühe du dir mit dem Erproben machst. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum geht denn das Scrolling erst in die andere richtung und dann folgt es dem Player ? Ich würde das Scrollen einfach nur weicher machen, also :
Code: [AUSKLAPPEN] ScrollPos = ScrollPos + (NeueScrollPos - ScrollPos) * Faktor
Ist der Faktor 1, so wird sehr Hart gescrollt, also das Scrolling ist immer = der SpielerPosition. Machst du den wert kleiner, bspw. 0.75, dann hast du ein weicheres Scrollen. mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Diese art von scrolling ist... woa... wohin gehts denn nu... was wo... (beschissen)
Du solltest eher ein weiches Spielerfolgendes Scrolling einbauen, d.h. je nach Distanz vom Spieler zur Mitte der Kamera scrollt diese schneller oder langsamer so das der Spieler wieder die Mitte ist. Und auch nur exakt bis zum Spieler, nicht weiter und auch nicht vorher stoppen. |
||
Warbseite |
Hangman |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Irgendwie hat das was... zumindest in Verbindung mit dem wie n Gummiball hüpfendem Männchen ![]() Ich finds zwar auch nicht perfekt, manchmal scrollt es "komisch", aber ist schonmal n schöner Ansatz. Finds lustig aber da besteht noch Spielraum für eine Überarbeitung ![]() |
||
Ich habe Berthold gebrochen. |
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielen Dank für Eure Meinungen erstmal. Damit hat sich meine wackelige Tendenz zum normalen Scrolling bestätigt und ich werde es wieder auf Ursprung zurückstellen ![]() ToeB hat Folgendes geschrieben: Warum geht denn das Scrolling erst in die andere richtung und dann folgt es dem Player
Das ist ein Bug, nichts weiter ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
PhillipK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wie genau meinst du denn "Gummibänder"?
Eine solche idee klingt für mich.. Mh, ich weiß nicht wie ich es beschreiben soll. Wenn ich mir ein gummiband vorstelle und kräftig ziehe (ich fange an mich zu bewegen) und höre plötzlich auf (ch stehe wieder), so kommt das gummiband doch nochn stück weiter, als bei einer Statischen kamera. Ich könnte mir das als kleinen effekt für manche RPGs vorstellen: Der Zwerg hat mal wieder n bierkrug zuviel und die kammera "pendelt" sich langsam auf seine position ein. Zu realisieren wäre das ganze über eine annäherung mit abstand*weichheit + speedfaktor. Hierbei gilt, das der speedfaktor höher wird, je länger die Kamera in eine richtung geht (und natürlich nicht zu hoch) Sollte dann der fall eintreten, das der spieler stehen bleibt, so "schießt" die kamera über die spielerposition hinaus (speedfaktor sei dank). Ist dieser fall eingetreten, muss der speedfaktor runtergebrochen werden (speedfaktor /0.80 zb) und bei einem geringen wert (zb < 1) umgedreht werden! Das spiel geht dann von vorne los, bis die kamera recht nah und mit geringem speed beim spieler ist -> Ein baumeleffekt, das sich die kamera auf die spielerposition einpendelt. Chrm, war schwer zu erklären, aber so irgendwie stelle ich mir eine kamera mit gummibändern vor ![]() Nun möchte ich deine erklärung wissen :> In deinem beispiel musste ich nämlich nicht an gummibänder denken, sondern daran, wie gemeingefährlich die kamera führung ist ![]() Aber ansonsten: Wow, gleich n kleines spiel geschrieben, nur um eine kamerasteuerung zu testen? Deine ausdauer möcht ich haben ![]() |
||
![]() |
The Shark |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde das ganze so umsetzen (Pseudocode):
Code: [AUSKLAPPEN] player.vector cam.vector camspeed.vector beschleunigungsfaktor=0.2 bremsfaktor=0.95 function update_cam() entfernung.vektor=vector_from_to(cam,player) beschleunigung.vector=entfernung vector_set_length(beschleunigung,vector_get_length(entfernung)*beschleunigungsfaktor) camspeed=vector_add(camspeed,beschleunigung) vector_set_length(camspeed,vector_get_length(camspeed)*bremsfaktor) cam=vector_add(cam,camspeed) end function |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
PhillipK hat Folgendes geschrieben: ...gleich n kleines spiel geschrieben, nur um eine kamerasteuerung zu testen?...
Um Himmels Willen, das Spiel entsteht sowieso ![]() ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
PhillipK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Würd mich freuen, wenn du meinen vorschlag mal testweise einbauen könntest ^^
Ich wills nicht weiter vertiefen, weil ich sonst wieder kopfschmerzen kriege, aber ich würde mich freuen, mal einen solchen ansatz zu sehen. Allerdings hatte ich das eben beim 2ten Kaffe mal so mir-nichts-dir-nichts hingekritzelt, an den werten muss stark gefeilt werden. Sonst passierts leicht, das die kamera irgendwo ist, nur nicht da, wo sie sein soll. Ich werde nichts dergleichen grade basteln, da ich mich erstmal mit OpenGL rumschlage. Wird zeit zu lernen! ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group