INTRODUCCION
Bienvenidos al GRAN hilo de los consejos de Mediavida Game Development, por y para desarrolladores.
Mi intención con este hilo es el de ir recopilando consejos, anotaciones, y conocimientos en base a vuestra propia experiencia e ir poniendolos en diferentes secciones sobre el desarrollo de videojuegos, para aquellos desarrolladores que estén empezando, puedan beneficiarse de ellos, y así aumentar su productividad sin calentarse mucho la cabeza.
Pretendo que esto sea un hilo participativo y sobretodo de debate, ya que no todos pueden estar de acuerdo en todos los consejos, así que hay vía libre para intentar refutarlos, siempre desde el respeto.
PONGAMOS ORDEN
La armonía siempre existe, si se halla un orden previo. Así que para hacerlo un poco más ameno, os voy a dejar una pequeña plantilla con la que me podéis ayudar a categorizar los consejos.
[b]Posible sección:[/b]
[b]Consejo:[/b]
[b]Lugar de origen(opcional):[/b]
[b]Imagen explicativa(opcional):[/b]
Esta extensa plantilla, se basa en que pongáis donde creéis que puede estar mejor posicionado el consejo y su respectivo dato. También a modo de opción, os pongo que indiquéis el lugar de donde ha salido el consejo, ya sea libro, página, etc... y para rematar, una imagen explicativa de como sería ese consejo al tratarse de algo práctico. Así de simple.
Pues nada, una vez todo dicho, empiezo poniendo un par de consejos y algunas posibles categorías. Si creéis que alguno de los consejos que he puesto no pertenecen a dicho lugar, y hace falta crear una nueva categoría, avisad.
CONSEJOS DE DISEÑO Y ARTE 2D/3D
Consejos generales de ArteConsejo 1: Es bueno hacer Sprite Sheets o Atlas de texturas, porque no solo incrementaran el ratio de frames de tu juego, sino que además permite usar subimagenes sin aplicar la regla del multiplo de dos.
Lugar de origen: Libro Learning LibGDX Game Development Second Edition. @marod
Consejo 2: Si no tienes ni puta idea de arte, no te pongas a dirigir el arte de tu juego. @1mP
Consejos de Pixel ArtConsejo 1: Da igual el programa que uséis para hacer pixel art, usad aquel con el que más cómodo os encontreís. @marod
Consejos de Game DesignConsejo 1: Empezad siempre con una idea muy simple, y fraccionadla en ideas aún más simples para aligerar el trabajo. @marod
Consejo 2: Una buena preproducción te ahorra tiempo, dinero y lagrimas. @Rubenum
Consejo 3: Cada proyecto empieza con una idea, que se suele plasmar en el Game Design Document o también llamado GDD. En el GDD se habla de las especificaciones básicas que tendrá el juego: nombre, plataforma, género, etc... Así como la descripción de niveles, mecánicas, objetivos... Acompañado con un mockup bastante sencillo, que dé pinceladas a la idea y la represente de una forma muy sencilla. @marod
Consejo 4: El GDD es la base del orden en todo proyecto, ya que el GDD se encarga de visualizar la idea de proyecto a cualquier persona que lo lea, ya sean diseñadores, equipo tecnológico o cualquier persona de la calle. Un GDD mal hecho representa desorden y puede llevar a tener una idea equivocada de lo que se quiere en el proyecto. @marod
Consejo 5: Aceptar ideas y críticas de todo el mundo, aunque hayas creado la idea inicial del proyecto, este crecerá mucho más incorporando otras aportaciones, vengan de donde vengan.@Player2gs
Consejo 6: No hay que cegarse con el ego del creativo. Si tienes una idea que crees increible pero pronto aparecen muchas voces discordantes, piensalo bien. Por muchas justificaciones que encuentres, por mucho que la puedas defender y salirte con la tuya: Si es una mierda, es que realmente lo es. Mejor saberlo cuanto antes y pasar a otra cosa. @javifugitivo
Consejos de 3D ArtConsejo 1: Blender es un programa gratuito, sencillo y con mucha documentación en internet para quien quiera empezar en el mundo del 3D. @marod
Consejos de Vector ArtConsejo 1: La pluma es tu amiga, no tu enemiga. Puede parecer un poco tosca al principio pero en cuanto le pillas el truco, te permite realizar cualquier forma de una manera sencilla, rápida y con más precisión. @marod
Consejos de IllustratorConsejo 1: Utilizad CNTRL + A para seleccionar todos los elementos de la mesa de trabajo, y CONTRL + SHIFT + A para deseleccionar todos los elementos que tengáis seleccionados. @marod
CONSEJOS DE PROGRAMACION, ENGINES Y FRAMEWORKS
Consejos generales de ProgramaciónConsejo 1: Comentad siempre vuestro codigo. @marod
Consejo 2: Acostúmbrate a programar siempre en Ingles. @Gusete
Consejo 3: Antes de empezar a escribir código sin ton ni son, usad papel y boli: analizad el problema, las posibles soluciones con sus desventajas (si las hay) y cuál se va a picar y cómo. @Kra
Consejo 4: Divide y vencerás: Es preferible tener demasiados métodos/funciones que quedarse corto. Un código bien dividido en funciones se comenta solo... si escribes la misma línea de código dos veces es que ya deberías haber creado una función para ello. @VicoViper
Consejo 5: Busca la solucion mas simple que arregle el problema que tienes ahora. @Gusete
Consejo 6: Cuando te enfrentes a un problema date un tiempo antes de ir a google para buscar la solucion. Si puedes usalo solo para casos muy concretos. @Gusete
Consejo 7: Usa librerias/ejemplos/codigo externo para todo lo que puedas. Si ya esta hecho y puedes usarlo, hazlo. @Gusete
Consejo 8: Las matemáticas son tus amigas si crees que las tienes oxidadas no descartes mirar algún libro o hacer algún curso de geometría o algebra para refrescar conocimientos. (Puedes encontrar libros con matemáticas específicas para programar videojuegos) @VicoViper
Consejos de UnityConsejo 1: Resetea SIEMPRE la posición de TODOS los GameObjects y prefabs (Aunque solo contengan un Script) te ahorrarás mucho sufrimiento innecesario. @VicoViper
Consejo 2: Usa la opcion Snap para crear una rejilla y limitar los movimientos, en Edit/Snap Settings puedes calibrar los ángulos de rotación a 15º o 45º para facilitar las rotaciones, el movimiento en X/Y/Z a 0,5 unidades o los scales a 1 unidad para facilitar el trabajo. Una vez establecidos estos parámetros, podrás hacer que todos los movimientos se ajusten a ellos pulsando la tecla ctrl mientras mueves/rotas. @VicoViper
Consejo 3: Cambia el color de fondo del editor en Playmode para asegurarte de que no realizas cambios durante el Play que deban mantenerse al salir. Ve a: Edit / Preferences / Colors / Playmode tint y ponle un color que no te moleste, pero te recuerde que esos cambios no se guardarán. @VicoViper
Consejo 4: Cuando lanzas un Raycast desde el interior GameObject si tiene un collider chocará contra él y siempre te devolverá dicho objeto. Para solucionarlo hay que hacer que el Raycast no empiece en el collider, para eso nos vamos a Edit -> Project Settings -> Physics2d y quitamos la box que dice "Raycasts Start In Colliders"
Imagen explicativa(opcional):
@Drhaegar
Consejo 5: La función Update () de Unity se ejecuta una vez por cada frame de ahí necesario multiplicar el movimiento por Time.Deltatime para que el juego corra a la misma velocidad en todos los ordenadores, cosa que no hace falta multiplicarlo en la función FixedUpdate() porque se ejecuta en intervalos de tiempo fijos @FernandoA
Lugar de origen: Update() y FixedUpdate()
Consejo 6: Hay que aprenderse la orden de ejecución de eventos como si las tablas de multiplicar fueran. @VicoViper
Lugar de origen: Execution Order of Events Functions
Tabla de orden de ejecución en Inglés
Tabla de orden de ejecución en Español
Consejo 7: Sí en tu juego vas a utilizar físicas, utiliza la función FixedUpdate() en vez de utilizar Update(). Debido a que FixedUpdate() itera multiples veces en un mismo frame, por tanto la actualización en pantalla será más completa. @marod
Unreal EngineConsejo 1: Los Blueprints de Unreal Engine están MUY infravalorados. He visto hacer una autentica barbaridad sin recurrir a C++. Consideralo seriamente para hacer scripting de toda la lógica del juego. @p0stm4n
iOSConsejo 1: No utilices (aún) Swift para programar un juego completo, el lenguaje está muy bien y es sencillo y a la larga será mejor que Objective-C, pero: Hay muy poca documentación que no sea el libro oficial, casi todas las librerías y scripts que quieras utilizar no están en Swift y por ahora es más estable. Si sabes Objective-C quédate con él de momento. @neoline
CONSEJOS GENERALES DE DESARROLLO DE JUEGOS
Consejos de Estudio de Videojuegos/EmpresaConsejo 1: Es muy bonito poder cumplir un sueño y trabajar en lo que más te apasiona, pero hay una parte que muchos olvidamos porque solo queremos hacer juegos y es la empresarial, si quieres sacar un negocio adelante asegurate de cubrirla. @Rubenum
Consejo 2: A no ser que seas DIOS. Si quereis ser un equipo profesional y serio, intentad tener especialistas en cada área que necesita la empresa. @Rubenum
Consejos de MarketingConsejo 1: Nunca escondas tu juego como una puta loca hasta que saques el Greenlight/Early Access/lo que sea. Empieza a crear comunidad y relaciones con prensa/youtubers/estudios amigos cuanto antes para contar con la máxima base de interesados una vez necesites esa visibilidad. @larkkkattack
Consejo 2: A la hora de hacer un comunicado, cuidad las formas y sobretodo la ortografía, ya que de cara al público la forma en que te comunicas representa tu actitud. @marod
Consejo 3: Las redes sociales ayudan para darse a conocer, pero no abuséis. Un Tweet o comunicado en Facebook cada 2-3 días está bien, cada 2 horas, de cara al público vais a parecer unos cansinos. @marod
Consejo 4: Lo bueno si breve, dos veces bueno. Es mejor pasarse 1 hora pensando en como crear un comunicado en menos de 500 palabras, que pasarte 1 hora escribiendo 2000 palabras, ya que no intentas escribir un blog sino que la gente lea lo que quieres expresar.@marod
Consejo 5: Si vas en serio gastate unas pelas en traducir el juego a los lenguajes mayoritarios (ingles, portugues, ruso, chino) porque la diferencia de descargas va a ser enorme. @r2d2rigo
Consejos MotivacionalesConsejo 1: Constancia, constancia y más constancia. @marod
Consejo 2: Si quieres hacer juegos, dedícate a hacer juegos, no a pensar como los harías. @VerZ
Consejo 3: La motivación es una herramienta útil pero impredecible, aprovéchala pero no la busques. Lo único que necesitas para que tu trabajo se haga es disciplina, márcate metas asumibles y cúmplelas aunque no te guste el resultado, oblígate a ti mismo a trabajar aunque no te sientas especialmente motivado, un trabajo mediocre es mejor que una tarde en el sofá... deja la motivación para los powerpoints de paisajes y ponte a trabajar. @VicoViper
Consejo 4: Suando lleves atascado con un problema varias horas y más si antes de ese atasco, llevabas programando alguna hora más, es mejor desconectar y dar una vuelta (descanso) o incluso dormir, que seguir atascado. A veces es una nimiedad, pero necesitas tener el cerebro más descansado y quitarte la frustración que tienes encima, para verlo. Evidentemente, lo anterior solo es posible si tienes un plazo de entrega que te lo permita. @Kra
Consejo 5: Escuchar música, aumenta la motivación. larkkkattack
Iré actualizando, según os animéis a poner más. Saludos.