[C++/OpenGL] Zoom Probleem

Pagina: 1
Acties:

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

Topicstarter
Ik ben bezig met een programma dat geografische data 2-dimensionaal op het scherm projecteert. Elk punt wordt voorgesteld met een cirkel en een naam op vaste afstand (ongeacht zoomniveau). Indien deze gegevens in een GL-list gestopt worden wordt bij het zoomen gescaled waardoor de tekst verder van het punt komt te staan. Ik heb dit opgelost door telkens wanneer gezoomd wordt de list opnieuw te compileren. Dit is zeer traag waardoor het zoomen niet vlot verloopt.

Ik zou hier graag een workaround voor hebben. Ik heb al zonder en met lists geprobeerd. Ik heb vandaag ook geprobeerd met een aparte thread te werken (die onderbroken zou moeten worden wanneer er na elkaar meerdere niveaus werd gezoomd) maar dan wordt er geen data meer getekend op de device context.

Heeft er iemand een oplossing hiervoor ??

P.S. Het programma werkt binnen de MFC.

ASSUME makes an ASS out of U and ME


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Zoomen doe je met manipulaties van de modelview matrix. Zoom info dus NIET in de lists meecompileren. Dan: matrix pushen, zoom instellingen in de matrix verwerken (dus matrix operaties uitvoeren zodat de camera goed staat en gezoomed) dan model tekenen mbv je list, matrix poppen en het hele spul begint opnieuw voor een andere list.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

Topicstarter
Dat is net het probleem. Gewone transformaties op de ruimte zorgen ervoor dat de labels verder weg komen te staan van de punten.

Even ter verduidelijking:

Als op het eerste zoomniveau de label 3 pixels verwijderd is van het punt dan wordt dit op een volgende niveau 6 pixels. Dit zou 3 pixels moeten blijven.

[ Voor 43% gewijzigd door H!GHGuY op 10-01-2004 19:03 ]

ASSUME makes an ASS out of U and ME


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Teken je je labels dan wel met een orthogonal projection matrix? (dus je labels los van de objects tekenen)

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


  • .oisyn
  • Registratie: September 2000
  • Nu online

.oisyn

Moderator Devschuur®

Demotivational Speaker

Je kunt toch gewoon je matrix resetten alvorens je de list gaat tekenen :? Ik zie het probleem niet.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.