Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

533
Views
API agnóstico Vector3, Matrix, etc.?

Estoy tratando de mantener mi lógica de juego API-agnóstica. Al hacerlo, no quiero usar la estructura Vector3 de Unity3D, o XNA, etc. ¿Cuál es la mejor manera de hacer esto? Parece que sería terriblemente pesado si implementara mi propia estructura Vector3 y simplemente escribiera convertidores implícitos para las diversas implementaciones de API.

¿Hay una mejor práctica para este tipo de cosas? No es como si pudiera pedirle a Microsoft, Unity, etc. que hagan un picnic y se adhieran a una interfaz común.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Parece que las implementaciones de XNA y Unity de Vector3 son realmente similares, la principal diferencia es el caso de los nombres de propiedad. Lástima que no hay forma de implementar propiedades de extensión.

Lo que podría hacer es crear un conjunto de métodos de extensión , junto con alguna compilación condicional ( #if UNITY_3_3 o #if XNA ) y usar exclusivamente esos métodos de extensión para recuperar valores en su código agnóstico de API. Esto aún le permitiría pasar el objeto Vector3 sin modificar al código específico de la plataforma que requiere Vector3 sin toneladas de conversión.

over 4 years ago · Santiago Trujillo Report

0

Según mi experiencia, seleccionaría una plataforma para escribir su lógica y luego, en la otra plataforma, crearía una implementación coincidente con conversiones a los tipos nativos de la plataforma. ¡No tiene sentido diseñar y escribir una tercera implementación y luego tener que hacer conversiones a ambas plataformas!

Todas las plataformas son iguales, probablemente preferiría XNA, ya que puede obtener una implementación de código abierto de MonoGame o (eventualmente) ExEn y usar eso.

Sin embargo, en la práctica, creo que es mejor comenzar con la plataforma en la que desea desarrollar (XNA o Unity) y luego crear su capa de compatibilidad una vez que realmente la necesite.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!