glua / gm_voxelate

A module for voxel support in Garry's Mod
https://glua.io
Other
21 stars 3 forks source link

Update? #1

Closed MDFL64 closed 7 years ago

MDFL64 commented 7 years ago

Swad wanted to do a thing. Not sure if still wants to do thing, and I still have some shit on my plate, but here's a list potential features for UPDATE.

Possible Goals:

There's a lot of other crap that COULD BE useful later, but I think this is a good list to start with.

Non-Goals:

MDFL64 commented 7 years ago

Looks like the underlying graphics API doesn't even support array textures? Fuckin nice.

SwadicalRag commented 7 years ago

yes am still interested​ I have an exam next week so I'm studying for it in the mean time

mcd1992 commented 7 years ago

I'd do a Lunix if you faggos can make the code somewhat platform-independent.

MDFL64 commented 7 years ago

Pretty sure it already is, mostly. I remember there was some weird fuckery with the SDK. I mostly just didn't want to deal with it, but if daddy's got it covered that's 💯

bmwalters commented 7 years ago

and i can 🍎 it up

MDFL64 commented 7 years ago

I just started porting this over to garrysmod_common + sourcesdk-minimal. Hopefully will be done sometime tomorrow.

SwadicalRag commented 7 years ago

I did too and I died

MDFL64 commented 7 years ago

Getting VS set up again then going to bed. Getting shit to build is about half of the battle, as usual.

SwadicalRag commented 7 years ago

i got everything to work except fastlz for some reason, so i tried to move it outside the src folder and tried to get it working again

if you want my premake, here it is

newoption({
    trigger = "gmcommon",
    description = "Sets the path to the garrysmod_common (https://github.com/danielga/garrysmod_common) directory",
    value = "path to garrysmod_common directory"
})

local gmcommon = _OPTIONS.gmcommon or os.getenv("GARRYSMOD_COMMON")
if gmcommon == nil then
    error("you didn't provide a path to your garrysmod_common (https://github.com/danielga/garrysmod_common) directory")
end

include(gmcommon)

CreateWorkspace({name = "voxelate"})
    defines({
        "RAD_TELEMETRY_DISABLED"
    })

    CreateProject({serverside = true})
        language("C++11")

        includedirs("../fastlz")
        links({"fastlz"})

        IncludeSDKCommon()
        IncludeSDKTier0()
        IncludeSDKTier1()
        IncludeSDKTier2()
        IncludeSDKMathlib()
        -- IncludeSDKRaytrace()
        IncludeSteamAPI()
        IncludeDetouring()
        IncludeScanning()
        IncludeLuaShared()

    CreateProject({serverside = false})
        language("C++11")

        includedirs("../fastlz")
        links({"fastlz"})

        IncludeSDKCommon()
        IncludeSDKTier0()
        IncludeSDKTier1()
        IncludeSDKTier2()
        IncludeSDKMathlib()
        -- IncludeSDKRaytrace()
        IncludeSteamAPI()
        IncludeDetouring()
        IncludeScanning()
        IncludeLuaShared()

    project("fastlz")
        kind("StaticLib")
        files({
            "../fastlz/fastlz.c",
            "../fastlz/fastlz.h",
        })

also I had to include glua headers like so:

#ifndef GLUA_HEADER_MEMES
#define GLUA_HEADER_MEMES

#define GMOD_ALLOW_DEPRECATED

// TODO, stop using the fucking gayry lua interface
// #define LUA state->luabase

#include "GarrysMod/Lua/Interface.h"

#endif

also in metaman's source engine headers you'll want this:


        if (!LOADINTERFACE("engine", INTERFACEVERSION_VENGINESERVER, iface_sv_ents))
            return false;
SwadicalRag commented 7 years ago

also to use SDKMathLib you'll need to manually modify metaman's gmcommon lib until this PR gets merged

https://github.com/danielga/garrysmod_common/pull/4/

SwadicalRag commented 7 years ago

also i was having super weird issues with vs2013/vs2015 not liking c++11

SwadicalRag commented 7 years ago

but yes, mainly couldn't figure out why the fuck this error appeared here

maybe gmodule sensei @danielga knows more