Videojuego de código abierto

Hola, queía hacer un juegos de código abierto multiplataforma parecido a terraria, por ahora no tiene ni nombre, pero quería preguntar si me podrían ayudar en este proyecto.

4 Me gusta

Uso Godot como motor ya que es software libre y de codigo abierto llevo mas de 2 años usandolo, me gustaria trabajar en un proyecto asi

1 me gusta

Sí, justamente estaba pensando en ese motor porque tiene muchas ventajas… deberíamos usar gdscript u otro lenguaje como C++?

1 me gusta

Varios dicen que Pygame funciona. Pero no sé, nunca lo intenté y no pienso hacer un juego la verdad, no es lo mío. =~=

Yo no soy programador, pero si puedo echar una mano. No sé, conversión de gráficos, traducción, testing… ¿Qué hace falta?

Yo estaba viendo de hacer uno, estando entre c o c++, y eligiendo SDL3, para usarla cómo tal, o un contexto opengl4…

Sea lo que sea, más bien se usar mucho mejor SDL3, recién empieza con opengl4 (en 3D).

Si va a ser en 2D, sería mejor SDL3, más rápido y ligero, y uno conserva mucho más control del código que con un framework como unreal, unity, godot…
Además, SDL es muy sencillo, lo mismo que raylib, también sencillo, pero con SDL, pero versión 2, es el núcleo de pygame de python, que a su vez, el interprete, está hecho en c…

Por último, SDL3, se puede portear a, por lo menos, windows, mac, linux, android, ios…

Una prueba de SDL3:

#include <SDL3/SDL.h>
#include <SDL3/SDL_main.h>

#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>


SDL_Window *window = NULL;
SDL_Renderer *renderer = NULL;
SDL_Event e;
int run = 1;

int main(int argc, char const *argv[])
{
	SDL_Init(SDL_INIT_VIDEO|SDL_INIT_EVENTS);
	window = SDL_CreateWindow("SDL3 Demo",640,480,0);
	renderer = SDL_CreateRenderer(window,NULL);


	while(run){
		if(SDL_PollEvent(&e))
			if(e.type == SDL_EVENT_QUIT)
				run = 0;
		SDL_RenderClear(renderer);
		SDL_SetRenderDrawColor(renderer,0xff,0xff,0xff,0xff);
		SDL_RenderPresent(renderer);
	}
	SDL_DestroyRenderer(renderer);
	SDL_DestroyWindow(window);
	SDL_Quit();
	return 0;
}

Tendrás que, si tu gestor de paquetes no tiene SDL3:

git clone https://github.com/libsdl-org/SDL
cd SDL
cmake -S . -B build -G "Unix Makefiles"
cd build
make -j
sudo make install

O, paquete aur, con yay…

Usar GDScript es el mejor lenguaje ya que es el que se mas se usa y hay mucha documentación, recursos y ayuda

Holaaa, un “motor” que te podría recomendar es raylib (aunque es más una librería que un motor), lo puedes usar en C, Rust, Python, o incluso Go.

No sé si hacer un juego en Python sería lo mejor, ya que puede quizá resultar lento si se están renderizando muchas cosas… no sé, la verdad es que tampoco soy ningún genio en el tema…

Buena idea, no tengo experiencia usando lenguages de bajo nivel, recomiendan algun curso gratis de C o C++?

voten: C, C++ o GDscript?
(solamente respondan a este comentario…)

Vi un video en el que intento recrear minecraft en python (usando opengl a traves de python, además), y apenas que pudo renderizar algunos cubos. Mientras que el lenguaje en el que fue hecho, java, también es interpretado como python.

Curso de bajo nivel, son las “playlist” que encontrarás en el canal de youtube:
https://www.youtube.com/@ProfesorRetroman
Y, además en español, si uno no sabe nada, empieza por el curso de z80 del mismo, para adquirir las bases, aunque desde ese punto puedes tardar uno o dos años…

Mientras, estuve haciendo un motor llamado “Story Engine”, en fase “en pañales” o “recién concebido”. Con SDL3 (renderizador), SDL3_image (lectura de diversos formatos de imagenes), SDL3_mixer (audio, efectos, música) y freetype (fuentes .ttf, para escribir en la ventana en lugar de la terminal).

SDL3 tiene una api de referencia muy chica, fácil de leer…

API: SDL3/APIByCategory - SDL Wiki
Tutorial (inglés): Lazy Foo' Productions - Beginning Game Programming v3.0

Para cosas como esta, puedes hacer una encuesta, el boton para eso esta en la “tuerquita”, a continuacion una imagen

  • C
  • C++
  • GDSCRIPT
0 votantes

Me parecía, pero no sabía como hacerlo

Hola! Quieren que lo cerremos acá o esperamos más votantes?

Ya podrias dejarlo asi

Bueno, es interesante el proyecto. Mira, yo estoy dispuesto a ayudar. Pero yo quiero programar en pascal, que intento aprender el lenguaje, esa es mi condición na más

Godot no es mala opción. Pero yo creo que sería más conveniente utilizar algo como love que utiliza lua. Pienso que sería más apropiado para la cuestion

También está Redot. Son personas que trabajaban en Godot pero que hicieron su propio fork no sé bien por qué.
Como que algunas cosas no les gustó y decidieron abrirse camino.

1 me gusta