Adjusted some Script and Makefile stuff
This commit is contained in:
parent
d6efed6177
commit
ebcf9910d2
35
Makefile
35
Makefile
@ -16,7 +16,9 @@ CFLAGS := -Wall -Werror -Wextra
|
|||||||
|
|
||||||
LDFLAGS := -lm
|
LDFLAGS := -lm
|
||||||
|
|
||||||
NAME := miniRT
|
OUT_DIR := out
|
||||||
|
|
||||||
|
NAME := $(OUT_DIR)/miniRT
|
||||||
|
|
||||||
SRCDIR := src
|
SRCDIR := src
|
||||||
|
|
||||||
@ -26,7 +28,11 @@ PLATFORM ?= PLATFORM_DESKTOP
|
|||||||
|
|
||||||
LIBRAYLIB := libraylib.a
|
LIBRAYLIB := libraylib.a
|
||||||
|
|
||||||
WEB_OUTPUT := miniRT
|
DISPLAY_WIDTH := 800
|
||||||
|
DISPLAY_HEIGHT := 600
|
||||||
|
|
||||||
|
WEB_OUTPUT_DIR := web
|
||||||
|
WEB_OUTPUT := $(WEB_OUTPUT_DIR)/miniRT
|
||||||
WEB_OUTPUT_HTML := $(WEB_OUTPUT).html
|
WEB_OUTPUT_HTML := $(WEB_OUTPUT).html
|
||||||
WEB_OUTPUT_JS := $(WEB_OUTPUT).js
|
WEB_OUTPUT_JS := $(WEB_OUTPUT).js
|
||||||
WEB_OUTPUT_WASM := $(WEB_OUTPUT).wasm
|
WEB_OUTPUT_WASM := $(WEB_OUTPUT).wasm
|
||||||
@ -36,15 +42,17 @@ OBJDIR_BASE := obj
|
|||||||
|
|
||||||
ifeq ($(PLATFORM), PLATFORM_WEB)
|
ifeq ($(PLATFORM), PLATFORM_WEB)
|
||||||
LIBRAYLIB := libraylib.web.a
|
LIBRAYLIB := libraylib.web.a
|
||||||
NAME := $(NAME).html
|
OUT_DIR := $(WEB_OUTPUT_DIR)
|
||||||
|
NAME := WE
|
||||||
CC := emcc
|
CC := emcc
|
||||||
AR := emar
|
AR := emar
|
||||||
CFLAGS += -v -DROOT_DIRECTORY=\"/data\"
|
CFLAGS += -v -DROOT_DIRECTORY=\"/data\"
|
||||||
LDFLAGS += -s USE_GLFW=3 \
|
LDFLAGS += -o $(WEB_OUTPUT_HTML) \
|
||||||
|
-s USE_GLFW=3 \
|
||||||
-s ASYNCIFY \
|
-s ASYNCIFY \
|
||||||
-s ASSERTIONS=1 \
|
-s ASSERTIONS=1 \
|
||||||
-s SAFE_HEAP=1 \
|
-s SAFE_HEAP=1 \
|
||||||
--preload-file scenes@/data/scenes \
|
--preload-file assets/scenes@/data/assets/scenes \
|
||||||
--preload-file assets@/data/assets \
|
--preload-file assets@/data/assets \
|
||||||
--shell-file raylib/src/shell.html \
|
--shell-file raylib/src/shell.html \
|
||||||
-DPLATFORM_WEB \
|
-DPLATFORM_WEB \
|
||||||
@ -104,7 +112,7 @@ endif
|
|||||||
|
|
||||||
all: $(LIBS) $(OBJDIR) $(NAME)
|
all: $(LIBS) $(OBJDIR) $(NAME)
|
||||||
|
|
||||||
$(NAME): $(OBJ) minirt.h $(OBJIO) $(OBJSCENE) $(OBJUTIL) $(OBJRENDER)
|
$(NAME): $(OUT_DIR) $(OBJ) minirt.h $(OBJIO) $(OBJSCENE) $(OBJUTIL) $(OBJRENDER)
|
||||||
$(CC) $(CFLAGS) -o $@ $(OBJ) $(OBJIO) $(OBJSCENE) $(OBJUTIL) $(OBJRENDER) $(LIBS) $(LDFLAGS)
|
$(CC) $(CFLAGS) -o $@ $(OBJ) $(OBJIO) $(OBJSCENE) $(OBJUTIL) $(OBJRENDER) $(LIBS) $(LDFLAGS)
|
||||||
|
|
||||||
$(OBJDIR)/%.o: $(SRCDIR)/$(SCENEDIR)/%.c minirt.h
|
$(OBJDIR)/%.o: $(SRCDIR)/$(SCENEDIR)/%.c minirt.h
|
||||||
@ -132,13 +140,20 @@ $(LIBS):
|
|||||||
make AR=$(AR) CC=$(CC) -C libft/printf
|
make AR=$(AR) CC=$(CC) -C libft/printf
|
||||||
make -C raylib/src PLATFORM=$(PLATFORM)
|
make -C raylib/src PLATFORM=$(PLATFORM)
|
||||||
|
|
||||||
|
$(OUT_DIR):
|
||||||
|
mkdir -p $@
|
||||||
|
|
||||||
$(OBJDIR):
|
$(OBJDIR):
|
||||||
mkdir -p $(OBJDIR) $(OBJDIR)/$(SRCDIR) $(OBJDIR)/$(RENDERDIR) $(OBJDIR)/$(IODIR) $(OBJDIR)/$(UTILDIR) $(OBJDIR)/$(SCENEDIR)
|
mkdir -p $(OBJDIR) $(OBJDIR)/$(SRCDIR) $(OBJDIR)/$(RENDERDIR) $(OBJDIR)/$(IODIR) $(OBJDIR)/$(UTILDIR) $(OBJDIR)/$(SCENEDIR)
|
||||||
|
|
||||||
vnc: all
|
vnc: clean clean_vnc all
|
||||||
$(VNC_SCRIPT)
|
$(VNC_SCRIPT) $(DISPLAY_WIDTH) $(DISPLAY_HEIGHT)
|
||||||
|
|
||||||
clean:
|
clean_vnc: clean
|
||||||
|
pkill -9 websockify || true
|
||||||
|
pkill -9 Xvnc || true
|
||||||
|
|
||||||
|
clean: clean_vnc
|
||||||
rm -rf $(OBJDIR_BASE)
|
rm -rf $(OBJDIR_BASE)
|
||||||
make clean -C libft
|
make clean -C libft
|
||||||
make clean -C memory
|
make clean -C memory
|
||||||
@ -146,7 +161,7 @@ clean:
|
|||||||
make clean -C raylib/src
|
make clean -C raylib/src
|
||||||
|
|
||||||
fclean: clean
|
fclean: clean
|
||||||
rm -rf $(NAME) $(MAP) $(WEB_OUTPUT_JS) $(WEB_OUTPUT_HTML) $(WEB_OUTPUT_WASM) $(WEB_OUTPUT_DATA)
|
rm -rf $(NAME) $(MAP) $(WEB_OUTPUT_DIR) $(OUT_DIR) $(WEB_OUTPUT_JS) $(WEB_OUTPUT_HTML) $(WEB_OUTPUT_WASM) $(WEB_OUTPUT_DATA)
|
||||||
make fclean -C libft
|
make fclean -C libft
|
||||||
make fclean -C memory
|
make fclean -C memory
|
||||||
make fclean -C libft/printf
|
make fclean -C libft/printf
|
||||||
|
|||||||
@ -1,49 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
NOVNC=""
|
|
||||||
|
|
||||||
XVNC=Xvnc
|
|
||||||
XVNC_HOST=0.0.0.0
|
|
||||||
XVNC_PORT=5901
|
|
||||||
|
|
||||||
DISPLAY_WIDTH=$1
|
|
||||||
DISPLAY_HEIGHT=$2
|
|
||||||
|
|
||||||
print_usage() {
|
|
||||||
echo "Usage: run_vnc.sh <width> <height>"
|
|
||||||
}
|
|
||||||
|
|
||||||
if command -v novnc_proxy &> /dev/null; then
|
|
||||||
NOVNC=novnc_proxy
|
|
||||||
elif command -v novnc &> /dev/null; then
|
|
||||||
NOVNC=novnc
|
|
||||||
else
|
|
||||||
echo "noVNC (novnc_proxy || novnc) not found! Aborting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! command -v Xvnc &> /dev/null; then
|
|
||||||
echo "Xvnc not found! Aborting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "$DISPLAY_WIDTH" = "" || "$DISPLAY_HEIGHT" = "" ]] ; then
|
|
||||||
print_usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
$XVNC :1 \
|
|
||||||
-geometry ${DISPLAY_WIDTH}x${DISPLAY_HEIGHT} \
|
|
||||||
-depth 24 \
|
|
||||||
-SecurityTypes None \
|
|
||||||
-interface $XVNC_HOST \
|
|
||||||
-rfbport $XVNC_PORT &
|
|
||||||
|
|
||||||
sleep 2
|
|
||||||
|
|
||||||
$NOVNC --vnc localhost:${XVNC_PORT} &
|
|
||||||
|
|
||||||
sleep 2
|
|
||||||
|
|
||||||
export DISPLAY=:1
|
|
||||||
exec ./miniRT
|
|
||||||
@ -109,10 +109,8 @@ uint rendering_loop(t_data *data)
|
|||||||
|
|
||||||
BeginDrawing();
|
BeginDrawing();
|
||||||
DrawTexture(data->texture, 0, 0, RAYWHITE);
|
DrawTexture(data->texture, 0, 0, RAYWHITE);
|
||||||
#ifdef __EMSCRIPTEN__
|
|
||||||
Vector2 pos = GetMousePosition();
|
Vector2 pos = GetMousePosition();
|
||||||
DrawCircleV(pos, (float)data->scene.w / 100, RED);
|
DrawCircleV(pos, (float)data->scene.w / 200, RED);
|
||||||
#endif
|
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user