Skip to content

Instantly share code, notes, and snippets.

@Lightnet
Lightnet / CMakeLists.txt
Last active February 27, 2025 16:24
SDL3 Vulkan CMake Build Test
cmake_minimum_required(VERSION 3.16)
project(VulkanSDL3Project C)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
include(FetchContent)
FetchContent_Declare(
Vulkan-Headers
# CMake configuration for SDL 3.2.4 project with SDL_ttf, SDL_image, SDL_mixer, and GLAD
cmake_minimum_required(VERSION 3.11)
project(MySDLProject VERSION 1.0 DESCRIPTION "SDL 3.2.4 C/C++ test with callbacks" LANGUAGES C CXX)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
@Lightnet
Lightnet / example_cameras.rs
Created February 26, 2025 22:54
example switch cameras
// example_cameras.rs
// A 3D first-person multi-camera example using Bevy 0.15.3 and Bevy Rapier3D 0.28.
// Features multiple players with switchable first-person cameras, mouse capture, WASD movement, Space key jumping, and a debug UI.
// Player with ID 0 is active by default; debug UI shows the current player ID via a dedicated 2D camera.
// --- Notes ---
// This application creates a 3D world with:
// - A static ground box and directional boxes (North, South, East, West) colored by world axes (Z, -Z, X, -X).
// - Players identified by `PlayerID`, each with a `Player` component and a `CameraPlayer` child (Camera3d).
// - Player 0 starts controllable with its camera active; Tab cycles through players.
@Lightnet
Lightnet / CMakeLists.txt
Last active February 25, 2025 07:15
raylib dll and static build options
# Minimum CMake version required to build this project
cmake_minimum_required(VERSION 3.10)
# Define the project name and language (C)
project(RaylibExample C)
# Set C standard to C11 and make it required
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
@Lightnet
Lightnet / CMakeLists.txt
Created February 23, 2025 23:48
Grok SDL3 build test.
# CMake configuration for SDL 3.2.4 project with additional libraries (shared libraries)
# This file sets up a project to build an SDL 3 application in C, fetching SDL and its
# extension libraries (SDL_ttf, SDL_image, SDL_mixer) directly from GitHub repositories.
cmake_minimum_required(VERSION 3.11)
# Notes:
# - CMake 3.11+ is required for FetchContent, which downloads and builds external dependencies.
# - We're using C (not C++) for main.c, which uses SDL 3's callback-based main functions.
project(MySDLProject VERSION 1.0 DESCRIPTION "SDL 3.2.4 C test with callbacks" LANGUAGES C)
# Notes:
@Lightnet
Lightnet / threejs_ecs_jolt02.js
Created November 19, 2024 21:13
threejs ecs jolt physics test 02
/*
Project Name: threepolygonenginejs
License: MIT
Created By: Lightnet
GitHub: https://github.com/Lightnet/threepolygonenginejs
*/
// Notes:
// simple ground and cube button create test
// create box on gui
@Lightnet
Lightnet / shape.c
Created May 22, 2024 05:47
sdl2 window shape test.
// https://github.com/libsdl-org/SDL/issues/8791
//strip down version for testing image
// use sdl2 default image bmp test.
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include "SDL.h"
#include <SDL_image.h>
#include "SDL_shape.h"
@Lightnet
Lightnet / input_save_load_scene.rs
Last active March 2, 2024 05:16
bevy Simple test using the input to save and load (S=save, D=load) Key.
Note this to remember how to do this...
// https://github.com/bevyengine/bevy/blob/main/examples/ecs/ecs_guide.rs
// https://github.com/bevyengine/bevy/blob/main/examples/scene/scene.rs
// https://www.youtube.com/watch?v=4uASkH-FUWk
//! This example illustrates loading scenes from files.
use std::fs::File;
use std::io::Write;

Using the https://vanjs.org/ to render html and javascript client build for gun.js

Features:

  • server minimalist
    • node js
  • user ui
    • login
    • register
    • forgot
  • change passphrase
@Lightnet
Lightnet / pygame_imgui_OpenGL.py
Created August 9, 2023 22:04
Simple Test for imgui pygame OpenGL to display the simple window content
import pygame
from imgui.integrations.pygame import PygameRenderer
import OpenGL.GL as gl
import imgui
import sys
def main():
pygame.init()
size = 800, 600
pygame.display.set_mode(size, pygame.DOUBLEBUF | pygame.OPENGL | pygame.RESIZABLE)