Jump to content
  • Advertisement

Guthur

Member
  • Content Count

    446
  • Joined

  • Last visited

Community Reputation

101 Neutral

About Guthur

  • Rank
    Member
  1. You could go the other way with this and say 'Why is the software I bought labeled v1.0 when it clearly doesn't work', being gamers we should all be very familiar with the 'patch it' approach by games companies. The reason is really down to marketing, selling version 0.8.25 or what ever clearly doesn't look good, but open source aren't selling it and so are not under the same pressure to label it version 1.0 by a certain 'release data'.
  2. Guthur

    What is the Lisp "Enlightenment"?

    Quote:Original post by rip-off Quote: And as for age; C (1972) and C++ (1983) are older than Common Lisp (1984). LISP has its origins in the 1950s, it is the second oldest high level programming language still used today. I know, but LISP is not Common Lisp, besides s-exp and cons they are quite different languages. I'm sure if you said Scheme and Common Lisp were the same then a lot of people who use those languages would strongly disagree. And even if you said C and C++ were the same a lot of people would jump out and disagree. Its like saying C is Algol, influence by sure, but not the same. So really LISP is not used today at all. Also I don't know why functional style programming always gets mentioned, sure closures and first class functions are essential to the functional paradigm, but the most popular Lisp's today, Scheme and Common Lisp, are multi-paradigm languages and indeed rarely do any of CL libraries I use follow a strictly functional paradigm (I am hard pushed to think of any actually). As Konfusius mentioned, dynamic is the more stand out element.
  3. Guthur

    What is the Lisp "Enlightenment"?

    zyrolasting: Basically, try it. If you like it then continue to explore it's use. Don't get caught up in hype, both positive and negative. It's actually just reminding of marmite right now, you either love it or hate it. You are not going to find many that appreciate it on these boards. As for the parenthesis block, I really don't see how this is ever an issue. C and its clones have caused many a headache for newbies with braces and semi-colons. And python, held up as a great beginner language, can also cause problems at the beginning with the significant tabbing. Every language has its on grammar and once you get used to it it is fine. I'm sure C and C++ programmers would say the {} () ; , :: . are not a problem and a Lisp programmer would say () are not a problem. I personally use Emacs and Paredit and frankly never have a problem with missing parenthesis or reading them. As for the size issue, yeah like .Net is small or the Java class libraries or the Python library collection. The fact that some things are builtin does not make it more difficult, and you can quite easily ignore lots of it until you have the time and inclination to dig a little deeper. And its not like you can selectively deploy aspects of the .Net framework or the JVM, it is there or it isn't. And as for age; C (1972) and C++ (1983) are older than Common Lisp (1984).
  4. Quote:Original post by Noggs Personally I try and avoid smartPtrs whenever possible, as it hides the complexity of what is happening in the background. No offense but that is the most ridiculous advice I have ever heard, the goal of good software design is to hide complexities not bring it to fore, it's called abstraction. You should try to avoid complexity whenever you can, unless you are some sort of programming masochist; just like you said, follow the KISS approach, and the main place to maintain the simplicity is at the interface, that is what smart pointers aim to do. If you really want to play about with, and learn about raw memory manipulation then learn some assembly and whip out an assembler, and leave it firmly as a learning exercise unless you wish to do embedded or OS kernel development. If on the other hand you wish to develop complex software then use modern software development techniques, that involves sufficient abstract and following the DRY approach.
  5. Guthur

    [Dx9] Using a class for vertex

    I can't remember DX that well, but I think vertex component ordering is important which could get messy if you were going to allow arbitrary class hierarchies, especially with it involves multiple inheritance. But anyway from what I read the memory layout of inherited classes is not specified in C++ spec so you are snookered. You could develop some way to map the various classes to a portion of memory but I think you are trying to over-engineer it anyway, KISS. Better to spend time on features that will actually show results, this particular feature wont gain you anything in my opinion.
  6. Guthur

    IP

    IP stands for Intellectual Property. It's someone who claims ownership (Property) of an idea/thought (Intellectual). Its a means of giving ownership of the intangible.
  7. Quote:Original post by samoth I wish Linux had asio and epoll working in a similarly good fashion. I will have to first admit I have little experience of this but I'm still going to have to raise the fact that this sounds a bit like 'FUD'. First off; Boost ASIO is not Linux kernels responsibility its Boosts, and it lists the Linux kernel 2.4 and 2.6 as supported here. And I see no mention of epoll not working after a quick google. It also slaps my as a little surprising that the most prevalent webserver platform is not capable of Async IO. Now if you can point evidence to the contrary I will certainly accept.
  8. Guthur

    typed one-liners

    (gethash from shop)
  9. The easy way is just use a model loader lib; there will be many of them I'd imagine, they will import and compile all the information and should be well tested. I'd personally use assimp to import from a wide variety of formats then produce my own format with only the information I require. But you could also just get a specific .obj loader.
  10. Guthur

    obj draw in opengl

    Better still, unless you are targeting limited devices, do it properly and research the Vertex Buffer Object (VBO), and the programmable pipeline. No offense meant but everything dunge suggested are now considered deprecated functionality going forward. So unless you have a good reason to, it is pointless wasting time and effort on them.
  11. Well I should be pretty safe then, because I don't actually expect it to do much. When you have low expectations its hard to be disappointed, hehe. My other idea is to create a custom readtable for the Common Lisp Reader then define my own reader macros to parse the file in a domain specific manner, while this would earn massive geeky kudos, the truth is I have never created such and it would take more time that I probably should devote to it.
  12. bvanevery: Well it will only be a build system of course, XML is not a programming language, it is a Markup Language specification. Thats why I was considering creating a Domain Specific Language (DSP), it would mostly be a definition language but might include a little functionality as well. On the XML approach (OGL centric), the shaders are just text at the end of the day (before they are compiled at runtime, there is no binary format) and the program is just a collection of these shaders, there is some properties then exposed through uniforms and attributes. It is feasible to create a runtime reflection system but the complexity of implementing such a system didn't seem worthwhile to me at this stage, instead I am thinking that I might use XML to produce a shader effect definition which I can load as a resource and then just reference by some GUID (probably a string name). I'm still toying with these ideas though and I'm no expert for sure, but the XML approach has some appeal, ease of getting start, a consistency to resource definition, and an ability to scale into a more complex asset management system. I think Naughty Dog took a similar approach with their asset management for Uncharted Drakes Fortune, the author of that book was a Naughty Dog employee (I think...I don't have the book handy though this was definitely mentioned as an approach).
  13. This might be drifting off a little but.... I was reading a book on game engine design today and it made me think about what I should treat as a resource, and the one thing that is pertinent to this thread is shaders and shader programs (OGL definitions), are these resources/assets? Well the book classed them as such and I am now inclined to agree. This as a certain ramification in that you can and maybe should now include them in whatever resource/asset management system you have setup. I am still toying with ideas for the way I should manage resources but I am kind of leaning towards a XML based system for resource definition, though I haven't totally ruled out a DSP language yet. I think an XML based resource definition setup could be made to work quite well for shader effects especially in context of some sort of material system. No real concrete suggestions, just thought it worth adding.
  14. Quote:Original post by Yann L Also keep in mind that not so long ago, there wasn't any good IDE on Linux. So it's a rather newish concept for die hard Unix developers, and many of them have a hard time adapting. Emacs can be your IDE, a mode can be created for just about any task, indeed it is my IDE at the moment. I actually use Emacs to get access to just on such mode, SLIME, for Common Lisp development, SLIME is awesome by the way if anyone is interested. I came from the GUI driven IDE, MSVS, to Emacs and I find it actually ok in comparison, admittedly the learning curve was steep but thats not really relevant because if you want to carry out complex tasks you are going to need complex tools (MSVS has its fair share of complexity too) and high level of knowledge, you don't start of in mathematics for example with differential equations, you have to build up your knowledge base. The thing is you need the keyboard more than the mouse, if you are actually doing any coding, so why would you want to be removing your hand from that device to make use of all the GUI elements. People will say use shortcut keys but then why do you have all the GUI widgets in the first place, except to require a huge monitor or even two. The winform designer in MSVS is pretty good though, and when creating small GUI driven apps it is hard to beat. [Edited by - Guthur on March 29, 2010 4:39:06 AM]
  15. There is lackings in the OpenGL SDK because Kronos is a graphics standards body which aims to provide open standards link, and OpenGL is a graphics hardware API standard. No where in its remit is the need to produce SDK's, so the fact there is any SDK documentation and samples is quite a bonus, as has been mention it takes time and effort to produce these. There are Nvidia and ATI samples for OpenGL though, both of whom are members of Kronos, along with MS and others. Admittedly it can be tough finding enough information to get started with OpenGL, but there is a very detailed specification documents available here. These things (OpenGL, DX) are not intentionally made to be difficult, but they are intended to be as flexible as possible, you can't anticipate everyones requirements so this is the only viable approach. But that flexibility will always breed complexity, they tend to go hand in hand. If you want usability then sacrifice a little flexibility and use one of the many freely available rendering engines. [Edited by - Guthur on March 28, 2010 5:08:39 PM]
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!