Jump to content

aiaf

Members
  • Posts

    720
  • Joined

  • Last visited

Everything posted by aiaf

  1. I noticed physic shapes (phy files) takes lot of time to load. Removing those for whats not 100% necessary should help.
  2. i spoke too soon The pick is ok. When i put the collapsed mdls in game , some have a green color all over the model ... other are just black area with some texture seen through When i put back the old mdls without collapse all looks good grey asteroids with textures. Any idea ? really annoying //Leadwerks Material File blendmode=0 castshadows=0 zsort=0 cullbackfaces=1 depthtest=1 pickmode=1 depthmask=1 diffuse=0.20000000,0.20000000,0.20000000,1.00000000 specular=0.501960814,0.501960814,0.501960814,0.501960814 alwaysuseshader=0 roughness=0.50000000000000000 mappingscale=1.00000000,1.00000000,1.00000000 drawmode=-1 shader="Shaders/Model/diffuse+normal.shader" texture0="./asteroidmobilee_diffuse.tex" texture1="./asteroidmobilee_normal.tex"
  3. I found a workaround, i use TOOLS -> Collapse in the editor and now the pick and keys are ok.
  4. Sure, i attached a test, output on console for mouse click: lep-master.zip
  5. Yes it detects the entity if no key check, i put a print. Here is how i add the keys: for(int i=0; i < masrmax; i++) { mas.push_back(new MissileAsteroid(unitexpmat, GetPointOnSphere(currentUnit->GetModel()->GetPosition(), 10, Math::Random(0, 360), Math::Random(0, 360)), currentUnit->GetModel()->GetPosition(), false)); mas->GetModel()->SetKeyValue("mas" , String(i)); } Inside MissileAsteroid constructor: //model = Model::Box(0.1, 0.1, 0.1); model = Model::Load("Models/Asteroids/AsteroidMobileE_LOD3.mdl"); model->SetScale(0.05); mass = 0.09; model->SetMass(mass); model->SetGravityMode(false); Shape* shape = Shape::Sphere(0, 0, 0, 0, 0, 0, 0.1, 0.1, 0.1); model->SetShape(shape); shape->Release(); Did some debugging below the phases i was interested in Creation of model: model -> entity -> shape In both cases the shape object is initialized ok. Nothing strange here. Pick of entities: pickinfo -> entity keys shape -> aabb I think the aabb is used for physics and maybe to detect picks. shape is null in case of the asteroid model load. keys does not contain the value i added (just a key name with value name of model). Not sure if related to the shape , some exclusion may happen inside for a reason, for sure the keys are not there.
  6. Hello Have a problem with pick info an entity, i have setup a keyvalue on the model. if (pickinfo.entity->GetKeyValue("mas") != "") { System::Print("hit"); int val = stoi(pickinfo.entity->GetKeyValue("mas")); if (window->MouseHit(1)) { System::Print("hit"); console->mas[val]->DecrementHps(); } } Code above works if i use a boxes (Model::Box) model = Model::Box(0.1, 0.1, 0.1); If i use a model like below: model = Model::Load("Models/Asteroids/AsteroidMobileE_LOD3.mdl"); model->SetScale(0.05); Shape* shape = Shape::Sphere(0, 0, 0, 0, 0, 0, 0.1, 0.1, 0.1); model->SetShape(shape); shape->Release(); The code doesn't detect anymore the mouse over the model. Any idea what is going on here ? im missing something.
  7. aiaf

    Structura

    A bit long to explain by text i try. Basic idea you are in space have a base (the middle cube thing) and are under attack by some enemies (i have a nice background story). The base can be expanded with components or other bases (little cube and sphere you can see in screenshot). There are 2 phases to each game: Detection phase: Certain types of enemies are spawned randomly near you , and they have some detection spheres. If you are inside the spheres you start to be detected. In mean time you need to scan and destroy this enemies and also take care of economy , mine asteroids produce energy etc. Main attack phase: You are fully detected and the main attack begins.Lots of enemies with different effects. The enemies are cloaked so you need to use a scan mechanic to see what type they are. Like missiles spawners, decoys, mines, energy neutralizers , hackers etc In mean time besides destroying as much as possible , the economy is very important. You really need to construct a jump drive and jump out, that will reset the attack till you get detected again and cycle restarts. Many more things but i try to paint a basic idea of what it does. This is somewhat inspired by Battlestar Galactica beeing attacked by the cylons, if anyone seen the BSG series. Ill put a video to show the first minutes of gameplay soon.
  8. aiaf

    Structura

    First time i added some textures but im keeping the blue look i grow to like it. Also asteroids are no longer cubes, and those transparent spheres are detection markers for the enemy (can only be seen after a scanner is built).
  9. Yes, its exactly what i did. I tested on my windows desktop and linux laptop and it works. Seem to always return highest resolution supported.
  10. Hi, Just Ubuntu is officially supported, but i think it works on arch also. Its just a matter to have all the libraries installed. Look here and find all the equivalent libs in arch and install them: Regards
  11. I get it, selecting the last resolution from GetGraphicsMode works. On my side i get a 2560x1440 fullscreen. Thanks , this basically answers my question.
  12. Its a good solution thanks. Best solution would be a new build from Josh with compiler from 20.04. But given Leadwerks 5 is around the corner probably will not happen.
  13. How do i get the desktop native resolution size in leadwerks ? I want to create a window full screen with the size of the user desktop screen. I seen in API: CountGraphicsModes GetGraphicsMode Probably been asked before but i searched and didnt find a solution.
  14. What a mess: https://developers.redhat.com/blog/2016/02/29/why-cstdlib-is-more-complicated-than-you-might-think/ I only have this header on my machine: /usr/include/c++/9/cmath Learned some things but I spend way too much time looking at this, im actually interested to have my game finished not finding out what the ld and glibc is doing under the hood. For the linux build i will install a virtual machine with 18.04.
  15. Hello, New lts version of ubuntu 20.04 is out, so i upgraded my 18.04 laptop. The editor seem to work ok. gcc version 9.3 is included. My game compiles ok, below you can see the link errors . I mention the math lib is linked (-lm): -lm Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a -ldl -lopenal -lGL -lGLU Source/Libs/Leadwerks/Library/Linux/libsteam_api.so -lX11 -lXrender -lXext -lXft -lpthread -lcurl Looks like an incompatibility between the new c++ library and the leadwerks static lib. libstdc++.so.6 -> libstdc++.so.6.0.28 Anyone has a workaround for this ? /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(OpenGLTexture.o): in function `std::pow(float, float)': /usr/include/c++/7/cmath:389: undefined reference to `__powf_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Entity.o): in function `Leadwerks::Entity::CalcAverageOmega(Leadwerks::Quat, Leadwerks::Quat, double const&)': /home/josh/Leadwerks/Engine/Source/Classes/Entity.cpp:5821: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Entity.o): in function `std::asin(float)': /usr/include/c++/7/cmath:107: undefined reference to `__asinf_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Entity.o): in function `std::atan2(float, float)': /usr/include/c++/7/cmath:145: undefined reference to `__atan2f_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Font.o): in function `__gnu_cxx::__promote_2<double, int, __gnu_cxx::__promote<double, std::__is_integer<double>::__value>::__type, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type>::__type std::pow<double, int>(double, int)': /usr/include/c++/7/cmath:418: undefined reference to `__pow_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(dVec3.o): in function `Leadwerks::dVec3::Normalize()': /home/josh/Leadwerks/Engine/Source/Classes/Math/dVec3.cpp:324: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(dVec3.o): in function `Leadwerks::dVec3::Length()': /home/josh/Leadwerks/Engine/Source/Classes/Math/dVec3.cpp:336: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(dVec3.o): in function `Leadwerks::dVec3::DistanceToPoint(Leadwerks::dVec3 const&)': /home/josh/Leadwerks/Engine/Source/Classes/Math/dVec3.cpp:354: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(dVec3.o): in function `Leadwerks::dVec3::DistanceToPoint(Leadwerks::Vec3 const&)': /home/josh/Leadwerks/Engine/Source/Classes/Math/dVec3.cpp:362: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Mat4.o): in function `Leadwerks::Mat4::GetQuaternion(Leadwerks::Quat&)': /home/josh/Leadwerks/Engine/Source/Classes/Math/Mat4.cpp:505: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Mat4.o):/home/josh/Leadwerks/Engine/Source/Classes/Math/Mat4.cpp:593: more undefined references to `__sqrt_finite' follow /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Math_.o): in function `std::log(float)': /usr/include/c++/7/cmath:339: undefined reference to `__logf_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(Quat.o): in function `Leadwerks::Quat::GetAverageOmega(Leadwerks::Quat const&, double)': /home/josh/Leadwerks/Engine/Source/Classes/Math/Quat.cpp:92: undefined reference to `__sqrt_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(meshcollider.o): in function `b3d::Vector::length() const': /home/josh/Leadwerks/Engine/Source/Libraries/b3d/geom.h:102: undefined reference to `__sqrtf_finite' /usr/bin/ld: Source/Libs/Leadwerks/Library/Linux/Debug/Leadwerks.a(pickcollision.o): in function `b3d::Vector::distance(b3d::Vector const&) const': /home/josh/Leadwerks/Engine/Source/Libraries/b3d/geom.h:105: undefined reference to `__sqrtf_finite'
  16. duh You could try to debug luajit see why it crashes and maybe contact luajit project
  17. aiaf

    Forth demo 1

    I dont think the scope is the problem. Its how people approach the project. Say you decide to join, then show your work, even small things done constantly will advance the project. Its a hobby you only have 2, 3 hours a week to spend on the project, make it count , approach this professionally. Read the other guys code and always think how your thing fits into what it exists already. Communicate and leave ego out and be interested to move the project forward. Meritocracy , your work is good, a way will be found to be included even if a bit different then the game plan. For artist should be similar, first get the general feeling of the game then contribute, ask people what models are needed or adopt/start a map yourself. I know its more complicated then this but most of the time the right attitude helps.
  18. You need the luasocket dll and socket.lua somewhere lua can find: http://w3.impa.br/~diego/software/luasocket/installation.html
  19. Ok , i created a test.dll that does the curl connection. extern "C" __declspec(dllexport) int test(); Then another exe that load/executes that, works for me. Make such simple test on your machine. Have a look here maybe is something related to how the plugin,curl are built: https://docs.microsoft.com/en-us/cpp/build/reference/md-mt-ld-use-run-time-library?view=vs-2019 Update to the latest libcurl, and build the dll on your machine in case you didnt do that allready. Dont have other ideas sry. http://www.dependencywalker.com/ on your plugin dll , you can see the exported function, but i suppose all is ok. https://drmemory.org/ on exe , worth a try but i doubt it will say something.
  20. I did a simple test with exe, works for me also. typedef CURL* (__stdcall *f_curl_easy_init)(void); typedef CURLcode (__stdcall *f_curl_easy_setopt)(CURL *curl, CURLoption option, ...); typedef CURLcode (__stdcall *f_curl_easy_perform)(CURL *curl); typedef void (__stdcall *f_curl_easy_cleanup)(CURL *curl); typedef const char* (__stdcall *f_curl_easy_strerror)(CURLcode); int main() { HINSTANCE hGetProcIDDLL = LoadLibrary("libcurl-d.dll"); if (!hGetProcIDDLL) { std::cout << "could not load the dynamic library" << std::endl; return EXIT_FAILURE; } f_curl_easy_init cinit = (f_curl_easy_init)GetProcAddress(hGetProcIDDLL, "curl_easy_init"); if (!cinit) { std::cout << "could not locate the function" << std::endl; return EXIT_FAILURE; } You built yourself the curl dll or got it from some other place ? Maybe your curl dont support some protocols ? curl.exe -V curl 7.69.1 (Windows) libcurl/7.69.1 Release-Date: 2020-03-11 Protocols: dict file ftp gopher http imap ldap pop3 rtsp smb smtp telnet tftp Features: AsynchDNS IPv6 Largefile NTLM I think you should check your plugin , my feeling is the problem is there. Use curl_easy_strerror to get the textual representation of your error.This should give some clues. CURL_EXTERN const char *curl_easy_strerror(CURLcode);
  21. aiaf

    Forth demo 1

    Maybe, but it was a worthy fight with good results.
  22. Best wishes and good recovery. Alex
  23. Hello, I release a demo of the forth community project. Read the story and try the demo:
  24. aiaf

    Forth demo 1

    Hello, Forth demo 1 (community project): forth_demo_1.zip Below you can read the story. About the end of 2018 i started a community project (forth). We got 10 people join, we used this forums to organize , discord, git etc. Some people contributed only at beginning , so there are actually 3 main contributors: mdgunn, slastraf and me. Organizing was hard and trying to keep a focus.After much discussion a theme + game idea was chosen. 3rd person game with a combination of sf and fantasy theme. Anyway tried my best with this and things moved along. In retrospect using voice comms would have been a better solution. Project can be seen here: Slastraf was doing character controler and modelling. mdgunn made a really good design document, and working on the first levels (cryo room etc). Game drifted into a more sf setting and first person. I learned lot of stuff and different workflows then i was used to , especially on modelling side and editor. Even with the ruff edges and problems for me it was good times working on this project. You learn so much more then working alone, so many thanks to mdgunn and slastraf. Some work was done, then slow times also , lack of time and maybe a lack of communication at the moment is semi abandoned. But the project has really good stuff in the git, so much work went into it. So im releasing a demo with some of the levels for the community. Its only parts of what we planned in the design document .I linked the levels in a way it makes some sense, not finished.It contains 4 playable levels. But it shows some original gameplay and will give you some idea what forth is about. Below some screens Menu: ship control room: VR level Dream level 1 Dream level 2 Cryo room The cryo room was supposed to be the initial level of the game , but somehow arrived in a state that if you make any change and save it crashes the editor. I included because is one of the best looking levels, wanted to link it to the others levels, even in unfinished state, but coudnt. For the vr level read the text carefully.Or you will not understand the mechanic that let you pass in the other levels. If you want to see individual level without following the game sequence use (loadlevel 1 to 5): forth.debug.exe +loadlevel 1 I dont know if we ever finish this game , but i had to do this post. Thanks everyone , this was long. Hope you like it and any feedback apreciated.
  25. Im thinking to release a demo out of what we have here, will include 4 complete levels (the robot computer room , the vr room, dream level 1 and 2. The cryo room will be included separately , i tried to link it to other levels but everytime i save the map it crashes the editor ... Hope you guys ok with this. In case somebody finds time to do some further work will be no problem.
×
×
  • Create New...