Jump to content

reepblue

Developers
  • Posts

    2,490
  • Joined

  • Last visited

Posts posted by reepblue

  1. Off the top of my head:

     

    - Leadwerks Game Player is now called Leadwerks Game Launcher.

    - There will be something "special" in June. Not only the 10,000 players playing LE3 Games with the launcher, but something else... (Josh is keeping a secret.)

    - The Workshop will soon support items that can be monetized.

    - If the game launcher does well, you'll (maybe) be able to publish, and monetize your games through the launcher.

    • Upvote 3
  2. Hi,

     

    I've only came across one topic relating to this, but it was for LE2. I have a gameplay mechanic in when an event happens, the entity would change it's skin via lua script to change it's "glow light" color. however, when multiple instances of this object are in the same scene, one box changes the material for all instances that have not been activated.

     

    Is there a way to have it that only the activated entity's material changes? I can do something else instead, but I'll need to know how to do this down the road.

     

    Thanks.

  3. Hey guys,

     

    I'm currently thinking about porting my Source project over to Leadwerks, so I started to port assets over and make test scenes and scripts to see if the gameplay concept would work. I started off making a test scene and I noticed that when I put a spotlight in, I got this gross effect on my floors and ceilings.

     

    60881f9b9e.jpg

     

    I tried setting the light quaIity to high, although it's less apperent, the spotlight line effect is still there. I can also hide the effect by toning the brightness, but I think that it can be a design barrier down the road.

     

    If you set the spotlight's "Cast Shadows" to none, the effect vanishes, along with my shadows.

    de693cd9ce.jpg

     

    Is there a better trick to avoid this issue, or is this a render bug. If not, then why is this happening? I'm running on a GTX 750ti if that helps, and can supply more information/files if needed.

     

    I was not sure if this is a bug in the engine, or it's just something you have to watch out for like Face Clipping.

     

    Thanks.

  4. I don't mind the basic GUI colors as I've spent years staring at Hammer's UI for over 6 years which kept it's 90's feel unless you applied a manifest. A "Dark Skin" would be nice, but I think something like allowing users to customize their workflow layout, Toolbar adjustments,and hotkeys to increase workflow is far more important then a nice coat of paint.

  5. I'm not sure if this was reported or not, but I noticed that there is a black line on the Horizon, and other skybox + water screenshots don't have it. Does this in the editor and in-game. Is this a rendering issue, or is it something can be fixed with changing the settings? Sorry to bother you if this was mentioned, but I did a quick search before I posted.

     

    Intel i5 Quadcore Processor @ 2.67 GHz
    16GM of RAM (DDR3)
    EVGA Geforce GTX 750 (FTW) graphics card with the latest Nivida Drivers (347.25).
    Windows 8.1
    

     

     

    78cc8b67eb.jpg

  6. I did some poking around, it's the use of tolua_luacommands_open(lua_State* tolua_S) under "/* Open function */" ls what kills it. The function can just return 0, and it will still crash. So I assume this is an issue with the library?

  7. Hi,

     

    Over the past few weeks, I've been looking into how to link objects to classes created in C++. Since I prefer to code in C++ but still value the flexibility of Lua, the goal of mine is to simply link a Object whether be a pivot, CSG, or a model to a C++ Class while having all the advantages of the Flowgraph communication, and such. When I came across ToLua++ (This File), I thought this would fix my problem.

     

    The plan was to link an object to a class by doing something like this in the Start function:

     

    self = self.class:new()
    

     

    However, if the lua-gluecode.cpp is included in the project at all without any calls from the Interpreter, the game will just downright crash if any object has a lua script attached to it, even the ones included in the SDK. I thought it was lua-gluecode.cpp calling my class wrong, but if it's NULL, it still does the same thing.

     

    luacommands.pkg:

    class BaseEntity;
    

     

    lua-gluecode.cpp:

    /*
    ** Lua binding: luacommands
    ** Generated automatically by tolua++-1.0.92 on 01/15/15 17:09:26.
    */
    #ifndef __cplusplus
    #include "stdlib.h"
    #endif
    #include "string.h"
    #include "tolua++.h"
    /* Exported function */
    TOLUA_API int tolua_luacommands_open (lua_State* tolua_S);
    
    /* function to register type */
    static void tolua_reg_types (lua_State* tolua_S)
    {
    tolua_usertype(tolua_S,"BaseEntity");
    }
    /* Open function */
    TOLUA_API int tolua_luacommands_open (lua_State* tolua_S)
    {
    tolua_open(tolua_S);
    tolua_reg_types(tolua_S);
    tolua_module(tolua_S,NULL,0);
    tolua_beginmodule(tolua_S,NULL);
    tolua_cclass(tolua_S,"BaseEntity","BaseEntity","",NULL);
    tolua_beginmodule(tolua_S,"BaseEntity");
    tolua_endmodule(tolua_S);
    tolua_endmodule(tolua_S);
    return 1;
    }
    
    #if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 501
    TOLUA_API int luaopen_luacommands (lua_State* tolua_S) {
    return tolua_luacommands_open(tolua_S);
    };
    #endif
    

     

    App.cpp::

    #include "App.h"
    using namespace Leadwerks;
    
    App::App() : window(NULL), context(NULL), world(NULL), camera(NULL) {}
    
    App::~App() { delete world; delete window; }
    
    Vec3 camerarotation;
    bool freelookmode=true;
    
    bool App::Start()
    {
    //Initialize Steamworks (optional)
    if (!Steamworks::Initialize())
    {
    System::Print("Error: Failed to initialize Steam.");
    return false;
    }
    
    // Call ToLua++
    if (Interpreter::L == NULL) Interpreter::Reset();
    tolua_luacommands_open(Interpreter::L);
    
    //Create a window
    if (System::GetProperty("fullscreen") == "1")
    {
    window = Window::Create("Test v0.0", 0, 0, 1024, 768, Window::FullScreen);
    }
    else
    {
    window = Window::Create("Test v0.0", 0, 0, 1024, 768, Window::Titlebar);
    }
    
    //Create a context
    context = Context::Create(window);
    
    //Create a world
    world = World::Create();
    
    //Create a camera
    camera = Camera::Create();
    camera->Move(0,2,-5);
    
    //Hide the mouse cursor
    window->HideMouse();
    
    std::string mapname = System::GetProperty("map","Maps/start.map");
    Map::Load(mapname);
    
    //Move the mouse to the center of the screen
    window->SetMousePosition(context->GetWidth()/2,context->GetHeight()/2);
    
    return true;
    }
    
    bool App::Loop()
    {
    //Close the window to end the program
    if (window->Closed()) return false;
    
    //Press escape to end freelook mode
    if (window->KeyHit(Key::Escape))
    {
    if (!freelookmode) return false;
    freelookmode=false;
    window->ShowMouse();
    }
    
    if (freelookmode)
    {
    //Keyboard movement
    float strafe = (window->KeyDown(Key:) - window->KeyDown(Key::A))*Time::GetSpeed() * 0.05;
    float move = (window->KeyDown(Key::W) - window->KeyDown(Key::S))*Time::GetSpeed() * 0.05;
    camera->Move(strafe,0,move);
    
    //Get the mouse movement
    float sx = context->GetWidth()/2;
    float sy = context->GetHeight()/2;
    Vec3 mouseposition = window->GetMousePosition();
    float dx = mouseposition.x - sx;
    float dy = mouseposition.y - sy;
    
    //Adjust and set the camera rotation
    camerarotation.x += dy / 10.0;
    camerarotation.y += dx / 10.0;
    camera->SetRotation(camerarotation);
    
    //Move the mouse to the center of the screen
    window->SetMousePosition(sx,sy);
    }
    
    Time::Update();
    world->Update();
    world->Render();
    
    context->Sync();
    
    return true;
    }
    

     

    If you want my BaseEntity.cpp/.h stuff, I can send it over, but it does absolutely nothing but print something on spawn. And as I said before, the luacommands.pkg can be totally empty and not be calling anything and it will still crash.

     

    If anyone could help, or recommend me better ways of doing this, I'll appreciate it.

    Thanks!

  8. @reepblue

    Saving and loading system: What exactly are you expecting here? You can write and load int, float, string. Could you give an example of how your suggestion would look in the API?

     

    Again, I already know you can create your own saving and loading data system. But it would be better if this was built in. Please excuse me being that the only other Engine I really know is Source. Just quickly explanation, you define those bools, ints, whatever under a table and those values are then used to keep track of them. When the game saves, all the values under that table are saved onto a .sav file along with other entities were also saved.

     

    I would think it would be nice if Leadwerks had a similar, or better way of doing this. But again, I know some people prefer to just write their own code and have things saved their own way in the end. Dunno, was just a quick suggestion.

  9. Editor:

     

    - Being able to move the UI elements such as the Asset Browser, and buttons would be nice. The Leadwerks editor is the only software I use daily that does not support this.

     

    - Key Shortcuts. Seriously, it will increase the workflow by a lot Leadwerks had more shortcuts,

     

    - Allowing people to edit their controls.

     

    - More example content! Maybe the uncompiled model file of the Crawler, the pistol viewmodel would be nice.

     

    Engine:

     

    - Both C++ and Lua games should have a base menu script, or at least one in the MyGame sample game.

     

    - Saving and loading system. Yes, there are tutorials and scripts around that do this but it would be nice if this was apart of the SDK. (Again, the MyGame sample)

     

    I only been using Leadwerks for a month or so, and these main things plus some of what others suggested are my nitpicks so far.

×
×
  • Create New...