Jump to content

StOneDOes

Members
  • Posts

    86
  • Joined

  • Last visited

Everything posted by StOneDOes

  1. Yep, I used the exact provided sample code without changes. Also its comforting to know that its an AMD issue - I hope they can fix it in a reasonable amount of time.
  2. I'm playing around with some of the example code, starting with Terrain. I've taken and run the exact sample code from the following page: https://www.ultraengine.com/learn/CreateTerrain?lang=cpp There appears to be some visual artifacting with the multiple textures. Removing the displacement map from the texture did not solve it. However it does not occur if I just apply a single texture. I took a short video sample to demonstrate this. My PC Information : Windows 10 CPU - AMD Ryzen 9 3900X 12 Core @3.8GHz GFX - AMD Radeon RX 6600 XT (with latest driver installed from https://www.amd.com/en/support/graphics/amd-radeon-6000-series/amd-radeon-6600-series/amd-radeon-rx-6600-xt) RAM - Corsair Vengeance RGB PRO 16GB DDR4 @3200MHz Thank you
  3. Can ultra load maps created in Leadwerks?
  4. Just noting for you that I had to replace ..\..\Source\ with $(LeadwerksHeaderPath)\ But also I'm confused as I have no Newton Dynamics directories in my libraries section ... so naturally my game compiles but I get a bad entry point error when I run it.
  5. Seems to get a bit more difficult for trying to hook the mouse hover event for a button. It can clearly be done with lua but I can't see an event for this in event.h. Have you managed to come up with anything for this?
  6. Hmm okay, but do you have any idea as to why it may be causing break points when I compile and run in release mode (At exactly when I assign the function pointer to the widget)? Because strangely enough it only happens *most* of the time ... sometimes it can run just fine, but runs fine every time in debug mode.
  7. Sorry to bump this but I really was hoping to get some advice here. Is there any current setup in C++ for some type of event handling with widget's other than what I've tried already? I was hoping for a better way, but also when compiling in Release Mode assigning a function pointer as a member variable to a Widget causes break points.
  8. Thanks for this! Did that and then changed the compression to uncompressed and it works
  9. Thanks mate, sounds good to me. That's what I was thinking in terms of having a multidimensional array - at this stage I believe I'm only going to be using a flat terrain, which I may change later. Perhaps I'll try something more advanced in a further version of the game where footpaths can possible be more so painted on, and use more complex terrain as well. Maybe that spline tools could be very useful for me one day.
  10. Sorry to hear. But perhaps you should have read more into the dev blog that was posted - it's clear that it's going to be updated constantly.
  11. Okay thank you for the heads up. Also your suggestion works fine: Image *image = gui->LoadImageA( "Materials/GUI/button1.tex" ); widget->SetImage( image ); widget->Redraw(); The only issue I've run into now is that Leadwerks is automatically resizing my button image into multiples of 64. I also can't find a way to rescale the image. Is there a way around this?
  12. Hi guys, Trying to get your take on the correct usage of the Image class. I'm trying to change the image of a widget using SetImage(). It seems that the documentation is incomplete, missing the Image class (unless I've missed it :S). Through trying to use this class, I've noticed that Image::Load() has been commented out in Window.win32.h (perhaps it was not finished?). I instead tried something like: wstring str = L"Materials/GUI/button1.tex"; Image *image = new Image(); image->Initialize( str ); Which exited my program after attempting a run, not sure why. Log:
  13. Keep it up! I'd much rather support an independent than something like Unity or Unreal ... Will be getting my subscription soon.
  14. Panther was referring to having already bought the engine, and then getting the free updates.
  15. Can confirm - I use community 2017 though depending on your OS you may have to track down a couple libraries from your Windows kits folder, like me.
  16. Yep, thanks for this one. But any advice to offer on my idea of event handling? Or perhaps is there another way?
  17. Cool, thanks for this ... I realised that GUI::Create() has 2 other overloads earlier, but I'm not sure why I didn't try using context instead of the window. Using context instead seems to solve my problem (also Enable() and Show() are not necessary - from my example). Now I'll try some event research and see if I can get some stuff working. EDIT: Cool, and it works: if( EventQueue::Peek() ) { Event event = EventQueue::Wait(); if( event.id == Event::WidgetAction ) { //do stuff here } } And then from here, I can edit Widget.h to store a function pointer which I can assign when creating the widget, and then call from it from inside the above, like so: Object *source = event.source; Widget *widget = dynamic_cast<Widget*>( source ); widget->function(); Thoughts on this?
  18. Hi guys, I'm trying to get the hang of drawing a GUI but falling rather short on actually getting anything to draw correctly. Right now I can create a button, but it only renders for a single frame when i hover the mouse over it and un-hover. So this leads me to believe that I need to perhaps render it every frame? Here's a test example: #include <Leadwerks.h> using namespace Leadwerks; int main( int argc,const char *argv[] ) { Window *window = Window::Create( "Some game", 100, 100, 400, 400, Window::Titlebar ); Context *context = Context::Create( window ); GUI *gui = GUI::Create( window ); Widget *button = Widget::Create( "Some Button", 100, 100, 100, 100, gui->GetBase(), "Scripts/GUI/Button.lua" ); button->Enable(); button->Show(); while( !window->Closed() ) { //button->Draw( 100, 100, 100, 100 ); context->Sync( true, 60.f ); } context->Release(); window->Release(); return 0; } Now, if I uncomment the Draw function I get an exception thrown on the following line. Thanks in advance for any help. EDIT: Just found this useful thread: https://www.leadwerks.com/community/topic/16487-understanding-new-gui-widgets/ Would calling Button::Redraw() every frame be the right way to go about this? And while I'm here, is there also a way to hook the event of button press in c++ or does it have to be done with lua?
  19. Hi guys, Just wondering how to go about having multiple instances of the same actual model? Let's take a model of a fence for example - if every time I wish to deploy a fence, if I call Model::Load() will Leadwerks actually load this model every time? Or will it load it once, store it, and return a copy of it for me? Or do I need to set up my own system that loads each model I need once, which returns a copy each time I need one? Thank you.
  20. StOneDOes

    GUI Design

    I know this is a year old, but I'm still interested. I'm having an error thrown on any function call that follows Widget::Draw(). If I don't call draw, it only renders for a single frame when the mouse hovers. Any ideas?
  21. Hi guys, What sort of technique would you recommend in order for building a footpath in a game like rollercoaster tycoon? I would like to be able to click with the mouse and place a footpath tile. Would decals be the right way to go here? Would they be efficient enough, since there could be (hypothetically) somewhat hundreds of tiles on screen at a time? Thank you.
  22. Hi there, I'm hoping to start a bit of a conversation regarding multiplayer game concepts using LE. I have read a few threads regarding multiplayer but there are not that many going in to depth, but then I've also seen some videos of what some people have managed implement (such as synced vehicle physics). My game isn't quite at the multiplayer stage yet, but hopefully I'll have a lot of it planned by the time it comes around. Firstly, I'd like to point out the fact that I like how LE uses a simple "do it yourself" messaging system, as oppose to having that extra layer on top that does the job for you. Not only the more you do yourself the more you learn, but the control over it so much better if your trying to create something like an information bubble. Sending and receiving basic messages from connection, to chat, kicked, banned etc. are a simple case. But syncing other life in the world becomes more difficult. After working with the Half Life 1 engine for several years I've picked up a few ideal concepts. What I've gathered is, sending messages to update a player's coordinates every time they move is a lost cause. Sending a key press to the server and have the server simulate the player's movement appears like an optimal way to go. The player will press the forward key, and that key press would be sent to the server, and with the server knowing the player's spawn location, it would be able to simulate movement based on this key press. The only catch I've found so far, is when setting an entity to use CharacterPhysics, you use SetInput() to control them. Assuming this is the right way to go, how would you send a key press message to the server if the player input is controlled by the engine? Or is there a more effective way? Then you also have vehicle physics. I don't have a lot of experience with LE yet, so I'll also put forward this question - does the physics engine have any randomisation in it? Or, if I crashed one vehicle into another, at the exact same spot, same angle, exact same force, will it result in the exact same physical reaction each time? This knowledge would also help fill the gap. Please share any ideas that your happy to give away. Thanks in advance.
  23. I love your choice of music. Christopher Nolan + Hans Zimmer = Best movie of all time (Inception). However, don't get caught up in a legal issue!
  24. Is there a particular way to do this? Or are you suggesting something like while( client->update() != nullptr ) { ... } ?
  25. Thanks for this. You were right, after calling Update() on the client, the server received the connect message, and the connect messag appeared on the Client end as well.
×
×
  • Create New...