Jump to content

TheoLogic

Members
  • Posts

    142
  • Joined

  • Last visited

Posts posted by TheoLogic

  1. I like it! The use of colors is really good. This is a really good example of that website do not need complex buttons or lots of fancy looking graphics. Simple use of a good color scheme is doing the trick perfectly.

     

    Only advice I can give you is personal taste: some of the text has a light gray color which makes the text a little difficulter to read.

     

    Do you mean the footer text? All other text is white :). Just to be sure, it could be a visual problem I would need to fix...

  2. My turn, my turn :)

    I'm working on a portfolio/blog/website with a custom cms, and I could use some feedback from time to time...

    At this stage I'm working on the design. I had some poped-up version in mind, but I think this is a tad over the top. Why? Because I mainly want to post code and code design and not artwork. After that version, I'm currently working on a, what I think, more professional and sober version.

     

    NOTE: This is WIP, the content needs to be designed. I am open to any comments you have, just shoot and don't be gentle if you don't want to :).

  3. You can't write an engine in C#. It would be horribly slow.

     

    If the end user could only use C# for XNA programming, that would be okayish, but there's no way I can rewrite the whole engine just for one platform. I doubt they would allow Lua either, and that it is pretty bad.

     

    The consoles are sort of a chicken/egg problem, but I predict once we have a mature LE3 product, it won't really be that hard to gain access to the dev kits. It's a harder sale when I have a product that's in development, and no history of console game development. I would have preferred to include consoles in development from day one, but I think it will work out okay. I can use the initial sales from LE3 on other platforms to hire console specialists for the port when we're ready.

     

    I agree with this. You can accomplish great things in C# XNA (rising rock - athmos for example, some people I know), but it's very specific, and you need to know a great deal about C#, asset management and the memory management to get it working at decent framerates...

    About LUA, I see it more as a service to non experienced developers or artists. Don't take this wrong, I think LUA is a good idea until some points, but there isn't anything you can do in LUA you can in C# or C++. LUA is just easier, a good level of abstraction for those who need it :).

  4. I'd be shocked if you ran into something that C# can't do that C++ can actually. I'd venture to say .NET has more library support and functionality than C++, and it's easier to setup and use too. That's saying something for a framework that is a baby when compared to C++. That's why it' so popular though.

     

    C# isn't cross platform :). But I agree, as far as functional requirements, C# can do almost (except for hardware handling) everything C++ can do. The main difference is how you do it. C# doesn't offer machine performance. Don't go and tell me it does, because it doesn't at all:

    I'm almost shipping a game for WP7 (XNA), which I have previously released for Nintendo DSi (C++). The lower end DSi is faster (same game logic) as the WP7 version. I had to do some caching and GC trickery to avoid lag while ingame.

  5. It's the same story on XBox. Do you have a developer license?

     

    It's too bad they only offer pure C# programming on XNA. C# would be fine for game code, but so many underlying libraries are written in C++. You'd think the console makers would learn from the success of the iPhone and open up their platform to developers.

     

    IPhone development is free, publishing not :). Same as Android and WP7 tbh.

    XBox idd has XNA, which is better as nothing at all. It's fairly easier to get a XBox dev license than PS or Nintendo...

  6. Those sound useful, but you can achieve most of them in VS...

    Building different sources in different build modes is I personally think in general a very bad idea. This is pretty error prone, and you can mix up those settings really quickly. I prefer building libs, and linking the lib I need for the build configuration I need.

    Syntax highlighting workaround would be visual assist, combined with the default IDE Tools -> fonts and colors.

    Intellisense is indeed a tad slow, much better in VS2010 with the light SQL DB. Much better results again with visual assist. You are stuck with the DB file, I admit.

     

    On the other hand, things I use every minute I code:

    - Cut/Copy/paste whole line

    - Open header/cpp (va)

    - Create implementation (va)

    - Add include (va)

    - ...

    can not be done in code::blocks.

     

    But again, this all depends on the user :).

  7. The reason why BlitzMax compiles so fast is that it uses MinGW, while LE2 with C++ normally uses Visual Studio. But since LE2 can now also be compiled using Code::Blocks with MinGW, it's as fast as the BlitzMax compiler. This is a huge boost in productivity since you can now compile and run your program in 2 seconds.

     

    You can optimize VS build speed, but the main reason why it's slower would be the optimizations. If you take a look at the VS STL you will see a lot of meta template programming, which will take extra compile time. On the other hand: the time you win while compiling, you will loose with the IDE. VS has a bunch of features, shortkeys, plugins, ... Saving you more are the seconds when compiling :). But again, all comes down with what you feel good with. If you prefer code::blocks, just use it, use notepad if you like!

    The main thing is to get the job done, how you do it doesn't really matter that much.

  8. I'm not trying to sell you C++ :). But if you say C get's the job done faster, in 75% of the cases I will not agree. In C you just need to get everything right to keep the compiler satisfied. Doing this, even when you have reusable code, you still miss some constructs like a red-black tree or hash tables, dynamic arrays, ... Constructing those from scratch in a real pain in the bum.

    I do agree that if you don't know C++, and some other language, you will probably get there faster :).

  9. Interesting, I never heard about OOC but it seems it looks a lot like C++. I should tell you to take a look at the STL. A lot of the template magic and meta programming has been done for you, no need to reinvent those things.

    I do not however agree that you must use templates in C++. C++ supports templates, and is useful for generic development, but 95% of my code involves no templates at all (at least not directly, for example by using the STL). With the upcoming, almost completed new ISO standard, you get new algorithms, containers, smart pointers logic, variadic templates, initializer list, ... where the biggest performance booster would be rvalue references empowering move semantics and perfect forwarding. Even if you do not plan to use this, I would suggest to take a look at it, you can find some very interesting design patterns there.

     

    Targeting professionals on 64bit is as clear as the answer to my question can get ;).

  10. There are some things that will not work as expected:

    if(States.empty() != NULL)

    Wait whut? If bool != 0? Which warning level are you compiling at. This should warn for conversion. Let's say .empty() returns true, you will do if(true != false), else if(false != false)... The check should be:

    if(States.empty() == false)

     

    Another thing would be the back() and pop_back() calls. pop_back returns the element, so you can just pop_back()->Destroy() it. Isn't this leaking? State is a pointer, what does Destroy do?

     

    What IDE are you using? A possible problem could be if you're using prior to VS2010, that you build the lib in SCL and the test-project (or whatever you name it) in HDI (debug vs release). What actually happens here is that the sizes of vector aren't the same, so hence an error.

  11. Unless you have a dedicated server, remote connection to a SQL database will not be possible. Most SQL machines are behind firewalls that are open to webhosting sites, but not to the www. Another option would be php get requests.

    If you are looking for free webhosting, my advice is don't. They literally put hundreds of client on one dedicated or even virtual machine. This results in slow-bum hosting, and even for testing you don't have the time to wait a couple of seconds before the page refreshes, or to bump your head to timeouts...

     

    I think you must find someone with paid hosting and some spare space. I can help you with this, shout me an email or pm if I can assist with hosting or php help.

  12. This is not my first try to implement multithreading with LWE, and I must say calling engine commands in different threads == fail!

    I solved it by using queue's to stash update data and updating it in the main loop. Yes I know, this is a wonderful person to handle. For animated loadingscreen I used windows GDI, a lame and unsafe hack. That the reason why leadwerks should have a render and an update thread...

  13. Combine the power of C++ with some optimization and this is what you get. There are two problems with this:

    1) Most of the time ppl just use the wrong container, method, ... to do things. How often do I hear someone using STL lists where a simple vector would do, or use algorithms to handle a container while the container has method to handle the same thing! The most ridiculous thing I ever heard were people wanting to write their own "vector container" because it didn't had a method they needed, which could be done with a for_each loop.

    2) Some people reading optimization tips say: "hell, I didn't do this, let me change that". This often results in minimal performance gain, and total unreadable code. Premature optimization is the root of all evil!!! You should write your code until it works, profile it and handle bottleneck by bottleneck. I once remember we profiled some educational engine, and the most used method taking the most CPU time was an Exists() method of the bitmap class. But again, this only took 1% of the total CPU time, most was drawn inside windows' GDI rendering.

     

    C++ isn't easy, you need to do everything by hand. Yes you need to write your own assignment operator and copy constructor or disable them if you don't need them, yes you need to encapsulate, yes you need to check for memory leaks, yes, yes, yes... What I often do with some code that is really important, like for example resource handling, is writing my code until it works, let it rest one or two days and take a look at it again. This takes time, so I don't afford to do this for everything. But I must say it helps in my case.

  14. @Rick: remember farcry 2? Foliage flying around, fire sparkles everywhere... For things like that you need the stack. I would like to see C# or java handle that, creating memory on heap for every little effects that lasts 2-5 seconds.

  15. @Lumooja, pointers aren't old C++, they are C++. C++ gives you the power to decide which memory you want to use, stack or heap.

    I would like to see how STL could replace pointers? They have smart pointers which you don't want to use, but STL is for data management.

    I agree on using boost, I'm still waiting until it's STL standard!

  16. Wasn't one of those points loading times?

     

    Means nothing without more info. Like what settings L4D2 was using and if it had good framerates .. the only accurate comparison that can be drawn so far is you can run both.

     

    Loading times is one thing, I think this is just an error on older specs.

     

    And what a whine about me running L4D2 at full settings on my gf's laptop, you have to be an idiot to not see the comparison. And if you read well, it uses a 7600 card, not running leadwerks over 10 FPS on low resolutions.

     

    I don't try to prove LWE is slow on lower end specs and older pc's, I'm saying it is and I think most people will agree. I'm asking to boost performance, and support deploying to lower specs. I also want multithreading in-engine, so we have seperate update and render calls, ...

×
×
  • Create New...