Jump to content

Canardia

Developers
  • Posts

    4,127
  • Joined

  • Last visited

Blog Comments posted by Canardia

  1. Advertisements are a big turn off for customers. If I see a web page with ads, I close it. Look for example at Mercedes-Benz, Ferrari, Lamborghini and Yamaha. They don't advertise, they don't need it. Leadwerks should be in the same high quality class, because it is. Sure, they have maybe 1 grand advertisement per year or so, and that's it. No spam.

  2. Perhaps you should first make the new server a testing server, before everything works.

     

    You could have an own domain for it (they cost only $10 per year each), like www.leadwerks-test.com. And when it works, then you can switch the www.leadwerks.com to point to the same IP also.

    Data Loss Announcement

    We could develop the website from scratch as a community project :)

    It's quaranteed easier and faster to make, than to screw around with some buggy BBS software whose developers destroy useful features in each patch.

     

    Josh should focus on LE3 only, and not waste his time with things which he is not good at. Let the people who have skills do those web sites.

    Data Loss Announcement

    You should install a test server where you can play around and test untested things like backups and restores. And you should have a fallback server too, which has always the last good state. Even a $100 netbooks are good enough to act as test and fallback server.

     

    And not to mention that with Domino this could never happen, since there data and design is seperate, and you can just switch take a backup of a design, replace it with another and switch back to the last good design anytime. It wouldn't happen with a self-made PHP/MySQL app either, since you are in control what is changed, but these ready-made boards are all ****. Also CPanel is ****, and I've never understood why it's even needed, as you can do much more and much easier things directly with SSH command line, or you can make your own CPanel with PHP or LotusScript.

     

    And I wouldn't trust any application level backups. Always take a OS file system level backup.

  3. Bullet is nice, but still a bit slow. I think it will get faster when it develops more, and it's being developed quite often.

    PhysX is quite fast, but Havok is faster.

    PhysX is again faster than Havok with GPU Physics.

     

    PhysX has a nice cloth simulation and concave bodies.

    Havok has also concave bodies which work very well, but Havok Cloth is a seperate product which I don't like, because it's like the Torque style of marketing.

    Havok has the best fluid and massive amount simulation though.

    PhysX is also not bad even without GPU support, but I heard the code has all SSE2 commands disabled deliberately, so it could be much better if they would fix that.

     

    The speed of Newton is a joke compared to all other physics engines (about 4 times slower than Bullet, about 8 times slower than PhysX), and it's not even accurate since it often keeps bodies standing on one edge.

     

    Overall, I tend to prefer Havok at the moment, but maybe in future Bullet will be the best.

  4. Don't worry, I've learned everything in university, but never understood linear algebra which talked about m*n matrices and their operations.

    That's why you buy a entity oriented game engine like LE, so you don't have to use maths ever in your life again.

    All you need is PositionEntity, TurnEntity, PointEntity, and other of those simple, logical and natural commands.

  5. The 16 members of a 4x4 matrix are usually numbered in mathematics like Y and X coordinate (the university teachers speak of columns and rows, which is kinda stupid, since even I think in Excel with x and y coordinates (much easier to make VB scripts that way)).

     

    So when they say m11,m12,m13,m14 (or m00,m01,m02,m03, if they start with 0 instead of 1, which is unusual since when talking about columns and rows you start with 1, so basically mathematicians have no clue about consistency, only C++ programmers do), they actually mean: cell at coordinate 1,1; 2,1; 3,1; 4,1. So in LE you have TVec16 which calls them A0,A1,A2,A3. For y==2, it's called B0,B1,B2,B3, etc...

     

    I could have called them like in mathematics, but then I would have needed to use y,x=x,y coordinate system, which would cause even more confusion between programmers and mathematicians. So calling them with letter+index can not be interpreted wrong, and it's also shorter to type. And yes, it is a common standard notation also, I checked several sites about it. It also unifies vector and matrix notation which is kinda cool.

     

    And since it's a Vec16, and not a Mat4 (which are the same thing though), you don't use x and y coordinates in Vecs. If I would have used Mat4, it would have been inconsistent again since it would be totally different that the Vec2,3,4,6 structs, which I wanted to avoid, since it's basically the same thing: just a container for an n-amount of floats.

     

    However, in addition to TVec16, there could be also TMat4 in the C headers, which would be the same as TVec16, but only using different member names. How useful that would be, I don't know.

  6. Yeah, Editor should be the central tool when making games. Even if you don't use Editor scenes much, it provides a nice portal to access all assets and avoid unnecessary coding in the main program.

     

    That's why it's important to have a custom menu option, so you can put there all kind of exe files to launch, and even give them some command line parameters like $selectionname for the asset name which is currently selected, $selectionfilename, $sbxfilename, $projectname, etc...

     

    I would first put "Save Backup"="git push" and "Sync with Team"="git pull" there as menu commands, so I can make backups and sync my game files with other team members directly from Editor. Next, I would also add "Code Game"="start $projectname.sln", to start Visual Studio, and then also "Manage Teamspace Files"="git gui", and many more things :D

  7. Does the same work for models?

    Model* mod1 = LoadModel("cube.gmf");
    mod1->SetScale(1,2,1);
    
    Model* mod2 = mod1->Copy(true);
    Model* mod3 = mod1->Copy(false);
    
    mod1->SetScale(2,1,1);

    mod1 and mod2 would be double high, mod3 would be double wide?

    Or can you make instanced models which each can have their own scale?

×
×
  • Create New...