Ho visto EAGLView e GLKView utilizzati nelle applicazioni iOS. Qual è la differenza tra loro?Qual è la differenza tra GLKView e EAGLView?
risposta
Entrambe queste classi sono correlate a OpenGL ES, ma solo una di queste è effettivamente fornita da Apple come parte dell'SDK di iOS.
EAGLView
non è una classe fornita con le strutture Cocoa Touch. Nei modelli OpenGL ES di Apple e nel codice di esempio, hanno creato classi con questo nome che ospitano il contenuto OpenGL ES. Altri hanno copiato e incollato queste classi nei tutorial che hanno scritto sull'argomento. Generalmente, l'unico elemento che accomuna tutte le classi con questo nome è che sostituiscono il metodo +layerClass
per restituire [CAEAGLLayer class]
, indicando che queste viste ospiteranno il contenuto OpenGL ES all'interno del loro livello di supporto.
GLKView
è nuovo in iOS 5.0 come parte del framework GLKit. GLKit mira a semplificare alcune delle impostazioni necessarie per la visualizzazione del materiale OpenGL ES fornendo classi di supporto come GLKView. GLKView gestisce l'impostazione di framebuffer e buffer di rendering per te, così come alcune delle altre attività per cui normalmente devi scrivere codice.
È possibile che questa classe non venga utilizzata molto nelle esercitazioni, dato che molte di esse sono state scritte prima di iOS 5.0, ma questa è una classe di supporto pratica che può semplificare il rendering di iOS OpenGL ES.
- 1. Qual è la differenza tra = e: =
- 2. Qual è la differenza tra Verilog! e ~?
- 3. Qual è la differenza tra? : e ||
- 4. qual è la differenza tra [[], []] e [[]] * 2
- 5. Qual è la differenza tra $ e $$?
- 6. Qual è la differenza tra ("") e (null)
- 7. Qual è la differenza tra dict() e {}?
- 8. Qual è la differenza tra " " e ""?
- 9. Qual è la differenza tra {0} e ""?
- 10. Qual è la differenza tra `##` e `hashCode`?
- 11. Qual è la differenza tra {0} e +?
- 12. Qual è la differenza tra .ToString() e + ""
- 13. qual è la differenza tra:.! e: r !?
- 14. Differenza tra glkView: drawInRect: e glkViewControllerUpdate :? OpenGL ES 2 - iOS
- 15. Qual è la differenza tra "è Nessuno" e "== Nessuno"
- 16. Unix: Qual è la differenza tra la fonte e l'esportazione?
- 17. Qual è la differenza tra il callback e la promessa
- 18. Qual è la differenza tra la sezione .got e .got.plt?
- 19. Qual è la differenza tra la lista() e []
- 20. Qual è la differenza tra GHC e la piattaforma Haskell?
- 21. Qual è la differenza tra sé e la finestra?
- 22. Qual è la differenza tra la cartella vim72 e vimfiles?
- 23. Qual è la differenza tra la serratura e RLock
- 24. Qual è la differenza tra la funzione() {}() e function() {}()
- 25. Qual è la differenza tra la crittografia SHA e AES?
- 26. Qual è la differenza tra la [OptionalField] e [NonSerialized]
- 27. Qual è la differenza tra Chisel e Lava e CLaSH?
- 28. Qual è la differenza tra queste funzioni
- 29. Qual è la differenza tra queste funzioni?
- 30. Qual è la differenza tra Response.Write() eResponse.Output.Write()?
grazie Brad per la tua risposta fruttuosa –
Ottima risposta. Spesso è utile avere un contesto storico per spiegare perché le cose sono fatte come sono. – Dalbergia