Kit Framework -- Modernt C++ ramverk för spelutveckling

Trädvy Permalänk
Medlem
Plats
Umeå
Registrerad
Mar 2013

Kit Framework -- Modernt C++ ramverk för spelutveckling

Hallå SweC!

Jag har ägnat dom senaste 18 månaderna till att utveckla en spelmotor/ramverk, och jag känner att det är dags att ta ut det i ljuset! Ramverket är helt gratis att använda för alla syften, det är licensierat under MIT licensen och är således också helt open-source. Jag arbetar på det helt och hållet på min fritid.

Notera: Ramverket är inte officiellt "släppt" än (ingen final release), men det är till stor del funktionsdugligt och jag arbetar hårt på det nästan varje dag.

Länkar:
Patreon: https://www.patreon.com/kitframework
Github: https://www.github.com/haikarainen/kit
Hemsida: https://www.thekitframework.org

Demonstrerar ljusmodellen. Bilden är helt och hållet realtidsrenderat & in-engine. Inspirerat av Unreal Engine 4.

Kom gärna med feedback/förslag, bygg gärna på koden via github, och finansiera gärna projektet via Patreon om ni tycker det är bra! Bara 10 spänn i månaden hjälper om många är intresserade!

Trädvy Permalänk
Medlem
Plats
Karlskrona
Registrerad
Aug 2009

Nice.
Då du kallar det "spelmotor", hur hanteras input, ljud osv? Längesedan jag byggde min senaste motor, men brukade basera dem på SDL, OpenGL osv för att få det plattformsoberoende.
Är Vulcan stöd något som kommer?

Asus Zenith Extreme | 32gb DDR4 3200MHZ CL14 | Threadripper 1950X | 1080Ti
Asus Z97 Pro Gamer | 32gb ram DDR3 2400MHz | i7 4790k | 2 x R9 390 - Barnen fått ta över
Asrock P67 Extreme4 rev3 | 16gb DDR3 2400MHz | i7 2600K | R9 290 - Barnen fått ta över
En massa bärbara, servrar, RPi's och andra boxar

Trädvy Permalänk
Medlem
Registrerad
Sep 2009

Jag har tyvärr inte tid att sätta mig och testa ramverket. Men jag vill säga att det är ett häftigt projekt du gjort/gör!

Lycka till i framtida arbete med det!

Смерть -это решение всех проблем. Нет человека - нет проблемы
Comp1: Ubuntu 16.04 Comp2: Arch Linux
Comp3: Ubuntu Server 16.04 Comp4: Centos 6.5
Comp5: Linux mint 16 Comp6: Raspberry pi (olika OS hela tiden)
Phone: Motorola Google Nexus 6

Trädvy Permalänk
Medlem
Plats
Umeå
Registrerad
Mar 2013

@inquam: Det är mer åt framework hållet än en spelmotor, men för att besvara dina frågor:

1. Input hanteras just nu genom att antingen kolla states i realtime, eller via events (det är ett eventbaserat ramverk). Stödjer mus, tangentbord samt kontroller (typ xbox360 som jag använder mycket för debug). Håller på med ett higher-level lager för input med ett bindsystem så att man kolla dessa states/events efter speldefinierade "actions" (typ WalkLeft).

2. Jag hade stöd för ljud tidigare via SFML audio, men då det kändes väldigt ihopknytet med resten av SFML så håller jag istället på att implementera en mer fristående lösning.

I övrigt så finns stöd för skriptning i språket chaiscript, det finns även verktyg som en material editor, world editor, asset importer osv.

3. Projektet är implementerat på OpenGL och GLFW, och stödjer just nu Windows samt Linux.

Vulkan stöd kommer inte att finnas inom en nära framtid, då c++ library delen är väldigt optimerad för just OpenGL. Vulkan är också byggt för mycket större projekt, och personligen tror jag inte att Kit har något att hämta där just nu. Dessutom misstänker jag att framtida versioner av OpenGL kommer implementeras ovanpå Vulkan, och då får man nyttja samma close-to-metal benefits som kommer med det, utan att lyfta ett finger i princip.

@asdfgh: Tackar!

Trädvy Permalänk
Medlem
Plats
Örebro
Registrerad
Mar 2008

Grymt bra jobbat, ser fram emot en release. Vad har du för features du vill implementera?
Hur ser du på fysik och AI?

Återigen, sjukt imponerad!

| Asus ROG Crosshair VII Hero | AMD Ryzen 2700X | AMD Wraith Prism | G.Skill TridentZ 16GB DDR4 @ 3200Mhz | EVGA GeForce RTX 2080 Ti XC ULTRA | Samsung 860 EVO 500GB + Samsung 860 EVO 1TB | Corsair AX850 | Fractal Define R6 TG Blackout | Acer XG270HU + EIZO Flexscan S2411W |

Monitor Audio Silver 200 + Denon AVR-1610 + Rotel RB-1552 MkII
Sennheiser HD650

Trädvy Permalänk
Medlem
Plats
Umeå
Registrerad
Mar 2013

@GarfieldPower: Missat ditt inlägg helt, sry

Tack! Har inte haft så mycket tid att lägga på projektet på sistone (är hemma själv med 3 barn i ett par veckor till). Jag har däremot haft en hel del tid att reflektera, och jag funderar lite på "minifiera" projektet lite. Ta bort överflöd och finslipa det som blir över osv.

Ang. fysik så kommer det inte finnas en ren fysikmotor out-of-the-box, men exempelvis Bullet physics är väldigt enkelt att integrera med övrig funktionalitet, har även gjort detta själv med bra resultat.

Ang. AI så är det helt upp till användaren, kommer inte erbjuda någon sådan funktionalitet. Kan dock rekommendera att göra den skriptad med hjälp av det inbyggda chaiscript stödet

Tack!