Canardia Posted December 22, 2009 Share Posted December 22, 2009 -------------------------------------------------------------------------------- Idea Pool (post your own ideas to this thread): - function to move the weapon from carrying position to scope position (and back) - video player written by Niosop - web browser written by Tyler - mirrors - IK -------------------------------------------------------------------------------- GameLib 0.1.0.0 is not ready: (no link) New features: - added Rect function override for Vec3->Vec3 (3D Rect) - added Line function override for Vec3->Vec3 (3D Line) - added error handling when trying to load a sbx file which does not exist - added Masterxilo's OpenGL 3D mode enabler/disabler functions - adjusted pivots for picking up items to be more accurate - added shadow resolution entity key handling to Scene::LoadMap() -------------------------------------------------------------------------------- GameLib 0.0.19.0 is ready: http://www.leadwerks.com/wiki/index.php?title=GameLib#Source_Code New features: - Added function CreatePlayerMesh(), which is useful when using gamelib without sbx scenes (it was made with seperate commands inside the ProcessScene() function earlier) - Adjusted the programmatically created player placeholder mesh to align correctly with the new Controller pivot - Fixed a bug in StringToVec2, 3 and 4 which made gamelib crash when reading strings with more values than the Vec was supposed to have (I noticed the bug because Josh made ambientlight in sbx a Vec4 for some reason) - Added option to create window in fullscreen resolution which is different from current Desktop resolution (auto resolution still works, which uses Desktop resolution for fullscreen mode) - Added Z resolution to window class (color depth) - Moved engine window creation to Window class - Fixed the bug which made gamelib crash when accessing a NULL pointer of Game class in TScene::Initialize() Changed files: gamelib.h gamelib.cpp window.h window.cpp -------------------------------------------------------------------------------- GameLib 0.0.18.0 is ready: http://www.leadwerks.com/wiki/index.php?title=GameLib#Source_Code Known bugs: Pointer to Game class in TScene::Initialize() is not initialized and crashes gamelib.To fix this bug, copy line 542 (scene.game=this;) in gamelib.cpp as new line before line 541. New features: - Renamed TGame class to Game class - Added LEO's Engine class to Game class - Moved AddMinimizeButton() to Window class - Added Window class which has a method to load a custom app icon - Added throwing of lifted objects - The strength entity key of a classname="player" or classname"info_playerstart" is now read into player.strength New files: gamelib.h gamelib.cpp // add this to the project gamelib.rc // add this to the project gamelib.ico window.h window.cpp resource.h // install only when you don't use Project Wizard -------------------------------------------------------------------------------- GameLib 0.0.17.0 is ready: http://www.leadwerks.com/wiki/index.php?title=GameLib#Source_Code New features: - Moved from C99 syntax to C++ syntax, so struct is now class. This allows inheriting of classes and expanding them with your own needs. - Added picking up, carrying and dropping of Models to the Player class: TPlayer::PickupModel(int mode). - Changed default 3rd person camera to be a half meter right of the player model, to get more freedom for sight (all modern 3rd person games do this). The camera position can be adjusted with the TPlayer::eyeoffset vector. - Fixed the bullets to be fired from the player's camera pivot instead of the scene's camera -------------------------------------------------------------------------------- GameLib 0.0.16.0 is ready: http://www.leadwerks.com/wiki/index.php?title=GameLib#Source_Code New features: - Fully supports Lua now - Using LEO now, so you don't have to add LEO to your project anymore when using GameLib - Using integrated framework with C++ interface from LEO - The "Null framewerk." popup message has been fixed (by using the integrated framework) - LuaTools class is included in GameLib also (game.luat), for easier handling of Lua commands - Lua fw variable is automatically set in Lua by GameLib - Editor's sound entity supports now pitch changes (the pitch slider needs to be added to the sound entity lua script, or do it manually in the sbx file with Notepad++) -------------------------------------------------------------------------------- GameLib 0.0.15.0 is ready: http://www.leadwerks.com/wiki/index.php?title=GameLib#Source_Code New features: - Fully supports Editor sbx files (supports also Sandbox sbx files) - New control variable: TScene::uselua (0=don't use lua, 1=use optimally, 2=use always. Default 1) - New control variable: TScene::usenewsbx (0=use Sandbox sbx, 1=use Editor sbx. Default 1) - Supports also new Framewerk features which are set in Editor's Atmosphere entity: brightness, contrast, saturation - StringToVecN() functions have a new option value: noconv=2 (0=autoconvert byte to float (when no decimal point is found), 1=never convert values, 2=always convert values) NOTE: 1) The "Null framewerk." message can not be fixed by gamelib, it has to be removed from the environment_athmosphere.lua script manually. You could also make your own improved athmosphere entity, where this message is commented out, then sync doesn't overwrite your fixes. 2) The red terrain in power tutorial comes from the terrain color setting in the sbx file. You need to change the terrain color manually in the sbx file using Notepad++ since Editor uses terrain color, but doesn't have an option to change it. -------------------------------------------------------------------------------- 1 Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted December 22, 2009 Share Posted December 22, 2009 Thanks Lumooja I will update my Gamelib files later. Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Davaris Posted December 23, 2009 Share Posted December 23, 2009 Thanks for this Lumooja. Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Davaris Posted January 2, 2010 Share Posted January 2, 2010 I just got the Gamelib demo working in a map I made myself, but the only thing I'm not sure of is the lighting. It doesn't seem to load lights into the scene. Is there something I need to do to make that work? Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
TylerH Posted January 2, 2010 Share Posted January 2, 2010 That Null Framewerk error occurs because you forgot to call SetGlobalObject("fw",m_framework); or whatever your variable name happens to be. Quote nVidia 530M Intel Core i7 - 2.3Ghz 8GB DDR3 RAM Windows 7 Ultimate (64x)----- Visual Studio 2010 Ultimate Google Chrome Creative Suite 5 FL Studio 10 Office 15 ----- Expert Professional Expert BMX Programmer ----- Link to comment Share on other sites More sharing options...
Davaris Posted January 2, 2010 Share Posted January 2, 2010 That Null Framewerk error occurs because you forgot to call SetGlobalObject("fw",m_framework); or whatever your variable name happens to be. I'm not getting that NULL message this time. Is that SetGlobalObject command something to do with LUA? Because I am using nothing but C++ atm. Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Roland Posted January 2, 2010 Share Posted January 2, 2010 Why this unusual thing. Including source files in source files. Personally I would prefer standard behaviour, thats do it as usual and include the source files in the project. First when compiling I was really confused. Why on earth do I get the error LNK2005: .... already defined in engine.obj But then I found those lines in gamelib.cpp. Problem solved by just comment them out #include "gamelib.h" //#include "engine.cpp" //#include "framewerk.cpp" //#include "renderer.cpp" //#include "layer.cpp" Quote Roland Strålberg Website: https://rstralberg.com Link to comment Share on other sites More sharing options...
Davaris Posted January 3, 2010 Share Posted January 3, 2010 I just discovered the problem: void TScene::ProcessScene() { ... while(!done) { done=1; childs = CountChildren(scene); for(i=1;i<=childs;i++) { loops++; e=GetChild(scene,i); cn=GetEntityKey(e,"classname"); cl=GetEntityKey(e,"class"); en=GetEntityKey(e,"name"); In my map: cn = "" cl = "Model" en = "light_directional" Later on this needs to be true to create a light: if(uselua!=2)if(cn=="light_directional") So I assume my map is corrupt? It odd because the light is the first loaded and everything else loads just fine. EDIT: I just tried it in a new map with the latest update and cn (classname) for the directional lights and I assume other lights is blank. So this sounds like it is one for Josh to fix. Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 If you are using Gamelib then that would be one for Lumooja, and in 2.3 there is no classname key. And why make a call to void TScene::ProcessScene() if you are using 2.3? is that not just for 2.2x? as LoadScene()handles it all in C++ and 2.3 Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 The missing classname key is a bit problematic in 2.3, since you have to take some random other key to identify the class. You could also set some custom entity key with Notepad++ in the sbx file, for example class_name="light_directional", but of course it would be nicer to have that functionality in Editor. It could be also fixed with a complete new LUA script set for all default entities of LE, so that each LUA script provides a classname field where the user can enter the class name. Maybe I will do that for gamelib, and include modified versions of all lights and other default entities with gamelib. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 why is this needed if LoadScene handles lights already? Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 There's many other things which gamelib loads from the scene, and which can't be done in LUA. For example the loading of weapons into a C++ STL map. Or waypoints, ambient light triggers, playerstarts, etc... Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 well that may be so, but Davaris's query was "light" specific. But wouldn't you just add a classname to an entity? just add: group:AddProperty("classname",PROPERTY_STRING,"") to the lua script which then gets written to the .sbx? Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 Yes, that's exactly why I need to do for the gamelib versions of the LUA scripts. In additition I also need to add some missing light settings, like shadowsoftness, additional lightmap sizes, and a bigger lightrange slider. Those things should be in my opinion in the default engine, but they are not. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 Well, Xtra light features aside, are you saying at the moment gamelib does not parse the lights? is this the root cause of Davaris's light problem? Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 It worked fine the last time I tried it (2009-12-30), but from what I understood there was some update over new year which apparently broke something. I need to check if I get the same problem, now that I'm back from the new year trip. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 Well if it is broke, is it a "classname" issue? as we have not had that entity key in 2.3 Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 The missing classname for directional light is indeed the reason: Model { path="light_directional.gmf" position=-20.9827633,131.497437,2.42692709 rotation=55.0000496,0.000000000,0.000000000 scale=0.999997675,0.999998093,0.999998093 id=76090920 "class"="Model" "intensity"="0.5" "name"="directional_4" } But I can fix that in gamelib, to make it look if the "name" key begins with "directional", as I've done for ambient light in 2.3 also. Line 1491 in gamelib.cpp would then look instead of: if(uselua!=2)if(cn=="light_directional") somehow like this (I need to test it first): if(uselua!=2)if((cn=="light_directional")||((en.compare(0,11,"directional")==0)) Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 3, 2010 Share Posted January 3, 2010 But classname has been missing all the time hasn't it? I mean for all the entities? Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Canardia Posted January 3, 2010 Author Share Posted January 3, 2010 I'm not sure, at least it was still there when I didn't delete the old entity created with Sandbox. I guess there are still many people who have old entities in their Editor maps, since they didn't recreate all entities with Editor, so I have to make sure that gamelib supports both Sandbox and Editor sbx, even if they are mixed in the same sbx file (which is obviously quite common). Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Davaris Posted January 4, 2010 Share Posted January 4, 2010 Thanks for the tips MG. I'll try your version. I'm still scrabbling around in the dark atm. Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Marleys Ghost Posted January 4, 2010 Share Posted January 4, 2010 Thanks for the tips MG. I'll try your version. I'm still scrabbling around in the dark atm. No problems Davaris I'm sure Lumooja will have gamelib all up and working soon. Quote AMD Bulldozer FX-4 Quad Core 4100 Black Edition 2 x 4GB DDR3 1333Mhz Memory Gigabyte GeForce GTX 550 Ti OC 1024MB GDDR5 Windows 7 Home 64 bit BlitzMax 1.50 • Lua 5.1 • MaxGUI 1.41 • UU3D Pro • MessiahStudio Pro • Silo Pro 3D Coat • ShaderMap Pro • Hexagon 2 • Photoshop, Gimp & Paint.NET LE 2.5/3.4 • Skyline • UE4 • CE3 SDK • Unity 5 • Esenthel Engine 2.0 Marleys Ghost's YouTube Channel • Marleys Ghost's Blog "I used to be alive like you .... then I took an arrow to the head" Link to comment Share on other sites More sharing options...
Davaris Posted January 4, 2010 Share Posted January 4, 2010 MG: I just tried your version and the ground doesn't look as good as the Gamelib version I am using. There seems to be less layers and the bump maps aren't working? The firepit is working though. So I have gone back to Gamelib, because more of it seems to be working than not. EDIT: I noticed the firepit particles do not work in GameLib and I can't see where Lua is activated in it. So I thought I'd put this in: //Set Lua variable BP L=GetLuaState(); lua_pushobject(L,framework); lua_setglobal(L,"fw"); lua_pop(L,1); However I can't get it to accept this: game.scene.GetFrameWerk() Can someone help me with it? Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Canardia Posted January 4, 2010 Author Share Posted January 4, 2010 You can't do that, since it needs the integrated framework. But I'm looking today how to get the integrated framework to work with gamelib 0.0.16.0. Quote ■ Ryzen 9 ■ RX 6800M ■ 16GB ■ XF8 ■ Windows 11 ■ ■ Ultra ■ LE 2.5 ■ 3DWS 5.6 ■ Reaper ■ C/C++ ■ C# ■ Fortran 2008 ■ Story ■ ■ Homepage: https://canardia.com ■ Link to comment Share on other sites More sharing options...
Davaris Posted January 4, 2010 Share Posted January 4, 2010 You can't do that, since it needs the integrated framework. But I'm looking today how to get the integrated framework to work with gamelib 0.0.16.0. Excellent. Thanks for letting me know. Quote Win 7 Pro 64 bit AMD Phenom II X3 720 2.8GHz GeForce 9800 GTX/9800 GTX+ 4 GB RAM Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.