Jump to content

Josh

Staff
  • Posts

    23,353
  • Joined

  • Last visited

Posts posted by Josh

  1. Photoshop is just more user-friendly.

    User-friendliness is probably the biggest determiner of what software people choose. I know from experience it is much harder to write easy-to-use software than to just write software. The ease-of-use aspect of it is an entire layer of development beyond the core technology. It's probably 2-3 times as much work, and it has to be considered when writing the very core of the software. So dismissing Photoshop as being easier to use, that's like dismissing a brand of tires because they don't explode on contact with asphalt.

     

    There's basically two ways to write software. You can approach it from the interior, and think about what makes the source code the most elegant, the most maintainable, and the most pleasant experience for the developer. The other approach is to think about what makes the end user's experience the most consistent, least surprising, and most pleasant. Leadwerks 2 was written with the first approach. Leadwerks 3 is being written with the second one. The second approach is much more work because you are absorbing complexity so the end user doesn't have to deal with various details. For example, the Leadwerks 3 editor auto-detects file changes and automatically converts model and image files into our own formats. In Leadwerks 2, the user was expected to do this themselves with command-line tools. The change in Leadwerks 3 made the developer's life more difficult because I have to deal with the complexity of making sure that works on all systems, but it made the end users' lives much easier. This is generally a good tradeoff, because for every hour I spend making the software more user-friendly, thousands of aggregate hours are saved by the user base.

     

    Open-source software tends to be written with the first approach, because the user experience work is very tedious, generally just isn't fun, and there is no financial incentive to buckle down and do that difficult work. If the business model is centered around paid support, then there is actually a financial incentive to make it harder to use.

    • Upvote 4
  2. I would count the terminal as the biggest disadvantage of Linux. If the terminal didn't exist, Linux would be forced to fix so many problems. My outlook is that if the user has to open the terminal to do something, it isn't really a supported feature, so all my recommendations will be based on this idea.

    • Upvote 2
  3. Regarding Linux, I can't tell you in detail yet. On other operating systems we make C++ compiling as easy as possible. It just works out of the box, 95% of the time.

     

    In Linux it is possible for us to package dependencies with Leadwerks itself, and also with your games you export from Leadwerks. My inclination is to include everything rather than trying to be clever and save space, so I believe the process will be as simple as possible.

     

    We're already making headway in "cleaning up" the Linux experience for users. For example, I have discovered that Intel integrated graphics interfere with the detection of a discrete GPU, making it all but impossible to install graphics drivers. (Tentative, not officially confirmed yet.) If this is indeed the case, my position is that those CPUs are incompatible with Linux. This and other useful information we discover will be added to the Ubuntu wiki in a page of our recommendations.

    • Upvote 2
  4. In a word: Speed. When you don't have all those Windows background processes going, games run fast.

     

    OpenGL rendering in Linux is faster than OpenGL or DirectX rendering in Windows. The Linux community is doing work now to make it even faster, with performance in the neighborhood of 200% Windows performance, on the same hardware.

  5. Hey, does the license allow for SINGLE USER simultaneous installs on desktop and laptop - without having to go through activation/deactivation toggling...? I have a PC at work, but use a Macbook at home on the weekends...

    Yes, that's fine.
  6. I have that code in Main App.lua :

     

    function App:Start()
    
    --Set the application title
    self.title="test"
    
    ...
    ....
    
    --Load a map
    local mapfile = System:GetProperty("map","Maps/start.map")
    if Map:Load(mapfile)==false then return false end
    
    return true
    end
    
    
    function App:Loop()
    
    
    if self.window:KeyDown(Key.L) then
    Map:Load("Maps/start2.map")
    Time:Delay(1000)
    end
    
    ...
    ...
    
    
    return true
    end
    

     

    The problem is in the app loop calling : Map:Load("Maps/start2.map")

    says unknown function ? what did i missed laugh.png ?

    I copied and pasted this into the script editor to run it, but since it is not an actual runnable script I am not pursuing my investigation any further at this time.
  7. The axis argument is the axis to point, and I think he wants control of the axis it rotates around.

     

    If you want to rotate around the Y axis, find the XZ vector between the two entities. Something like this will do it:

    Vec2 v = entity0->GetPosition(true).xz() - entity1->GetPosition(true).xz();
    float angle = Math::ATan2(v.y,v.x);
    entity0->SetRotation(0,angle,0);

  8. Try adding this to the end of the RectangleTesselator::Computer function:

    surface->UpdateAABB();

     

    I am curious why you are duplicating the built-in terrain. That paper is describing almost the same exact technique I implemented. (Their geometry approach is a little different, but it looks like the texturing technique is identical.) Not that I mind.

     

    Their geometry approach is nice in that it would only require a few passes, although it would be more restrictive with LOD distances and max view range. Something to think about at some later point...

  9. Bear in mind if something is not documented it may not work completely, or may be subject to change in the future. For example, wireframe rendering does not work on mobile devices.

     

    If you are fine with that, feel free to poke around the headers and discover secret features.

  10. Linus was criticizing Nvidia for not programming switching between an integrated Intel graphics chip and the NVidia card, dynamically. This caused Linux laptops with NVidia cards to always use them, leading to shorter battery life.

     

    Leadwerks 2 would not have run on an old integrated graphics chip, either.

     

    For both ATI and NVidia, the proprietary drivers are far better than the open source alternatives.

     

    There is a lot of interesting things going on behind the scenes with regards to the software and hardware for Linux gaming. It's very exciting to be working together with other companies to seize our own destiny out of the jaws of Windows 8.

  11. Those games are all DirectX games. Intel's support for OpenGL is pretty poor. Even when Leadwerks is released for Linux you will need a GPU to take advantage of it. Or even an AMD APU, which are like Intel integrated graphics except not terrible.

     

    Crippling OpenGL is one of the tricks MS and Intel use for vendor lock-in, whether it's intentional or just out of negligence.

     

    You can get a GPU with 100x the performance you have now for less than $100.

×
×
  • Create New...