| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen | 
	
	
		| Autor | Nachricht | 
	
		| Jonathan_Klein Living Legend
 
  
 Alter: 38
 Anmeldedatum: 17.02.2003
 Beiträge: 3433
 Wohnort: Siegerland
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 26.07.2004, 20:13    Titel: Direct3D->DrawText |   |  
				| 
 |  
				| Ich hab mir eine solche Textfunktion wie im Buch beschrieben gebastelt. Ist auch anz prima. Aber jetzt: Ich wollte ien hübsche laufschrift machen, aber wenn diese in den Bildschirm reinfährt, funktioniert die Anzeige nicht mehr so korrekt. Der Text läuft rein, aber immer nur stückchenweise, dh, erst wenn das letzte Stück ca. 1 cm vom Rand weg ist, erscheint das nächste, welches dann wieder bis zum Rand reicht. Diese läuft wieder ca 1cm weg bis das nächste kommt. 
 Die Funktion berechnet einmal das benötigte Rechtewck und zeigt den Text dann in selbigen an (genau wie im Buch)
 
 Hat irgendjemand ne Lösung?
 _________________
 https://jonathank.de/games/
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| TheMillenium Dark JLI'ler
 
 
 
 Anmeldedatum: 21.07.2002
 Beiträge: 1427
 Wohnort: World
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 26.07.2004, 20:37    Titel: |   |  
				| 
 |  
				| Das liegt wahrscheinlich am Clipper. Diese Funktion schützt davor, dass über den Speicherbereich der Surface hinaus gezeichnet wird. Du musst dann selber ermitteln wo der Bildschirm endet und bis zu welcher x bzw. y "Spalte" der Buchstabe/Ziffer gezeichnet werden darf. Steht eigentlich im Buch drinnen?
 _________________
 The source of all power is in its destiny...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Jonathan_Klein Living Legend
 
  
 Alter: 38
 Anmeldedatum: 17.02.2003
 Beiträge: 3433
 Wohnort: Siegerland
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 26.07.2004, 21:34    Titel: |   |  
				| 
 |  
				| normalerweise sind die XSprites ja automatisch geklippt. ich kann mal verscuhen das Rechteck anzuschauen, das berechnet wird, und dieses dann zuschneiden. Nur ob der Text dann i Rechteck noch richtug positioniert ist?
 Was auch wohl ginge, wäre den Text auf ein Surface zu schreiben und dann den richtigen Teil anzeigen.
 Wollt nur wissen obs auch einfacher geht.
 _________________
 https://jonathank.de/games/
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| TheMillenium Dark JLI'ler
 
 
 
 Anmeldedatum: 21.07.2002
 Beiträge: 1427
 Wohnort: World
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 27.07.2004, 05:33    Titel: |   |  
				| 
 |  
				| du musst einfach nur das an den gefährlichen Bildschirmrändern mit den Buchstaben machen: 
 000000000
 001000100
 001000100
 001111100
 001000100
 001000100
 000000000
 
 
 -->
 
 000000
 001000
 001000
 001111
 001000
 001000
 000000
 
 Wenn sich der Buchstabe zuweit am rechten Bildschirmrand befindet!
  _________________
 The source of all power is in its destiny...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Jonathan_Klein Living Legend
 
  
 Alter: 38
 Anmeldedatum: 17.02.2003
 Beiträge: 3433
 Wohnort: Siegerland
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 27.07.2004, 09:28    Titel: |   |  
				| 
 |  
				| un wie kann ich DirectX mitteilen es solle die Buchstaben nur halb teilen? Und wie könnte ich einstellen, das die Schrift nicht auf den Bildschirm, sondern auf eine Oberfläche geschrieben werden soll? _________________
 https://jonathank.de/games/
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| The Lord of Programming Living Legend
 
  
 Alter: 38
 Anmeldedatum: 14.03.2003
 Beiträge: 3122
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 27.07.2004, 12:21    Titel: |   |  
				| 
 |  
				|  	  | Jonathan_Klein hat Folgendes geschrieben: |  	  | Und wie könnte ich einstellen, das die Schrift nicht auf den Bildschirm, sondern auf eine Oberfläche geschrieben werden soll? | 
 Du musst doch sicherlich beim Rendern eines Textes den Backbuffer ö.ä. angeben. Stattdessen übergibst du eben einen Zeiger auf ein anderes Surface, das du vorher erstellt hast
  _________________
 www.visualgamesentertainment.net
 Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
 (1) Realtime Developer Testing and Debugging Console
 
   Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
 Hilf Schäuble! Damit er auch was findet...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| TheMillenium Dark JLI'ler
 
 
 
 Anmeldedatum: 21.07.2002
 Beiträge: 1427
 Wohnort: World
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 27.07.2004, 12:25    Titel: |   |  
				| 
 |  
				|  	  | Jonathan_Klein hat Folgendes geschrieben: |  	  | un wie kann ich DirectX mitteilen es solle die Buchstaben nur halb teilen? Und wie könnte ich einstellen, das die Schrift nicht auf den Bildschirm, sondern auf eine Oberfläche geschrieben werden soll? | 
 
 Mit einer eigenen "Draw-Funktion". Christian zeigt ja wie man jeden einzelnen Punkt selber zeichnen kann. Da zeichnest du am Besten immer ne ganze y-Spalte. Bei zweitens wie Lord gesagt hat, das Ziel musst du ja immer angeben.
 _________________
 The source of all power is in its destiny...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Jonathan_Klein Living Legend
 
  
 Alter: 38
 Anmeldedatum: 17.02.2003
 Beiträge: 3433
 Wohnort: Siegerland
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 27.07.2004, 15:25    Titel: |   |  
				| 
 |  
				| ne, das Ziel muss man nicht angeben. Mit hilfe des Devices kann man das Font objekt erstellen und damit zeichnen. Aber nirgendwo musste man da den Backbuffer übergeben. Aber ich habs auch so geschaft, einfach das Rechteck zugeschnitten nd die Positionierung des Textes geändert, jetzt gehts.
 _________________
 https://jonathank.de/games/
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		|  |