Whats going on ?
-
- Posts: 1186
- Joined: Fri Dec 29, 2006 12:04 am
I'd distinguish between a library and API. For me, Irrlicht is a wrapper for the OpenGL and DirectX API.Dorth wrote:"Just wrappers". I disagree. They have a huge amount of weight lifting and logic behind. And if you think such functionalities are just wrappers, then every api ever or nearly can be considered "just" a wrapper of lower stuff down to assembly...
And network libraries would be wrappers to, for example, the Winsock API.
That's why i don't like to use all these irr* wrappers here in the forums. The is no point in wrapping a wrapper.
Well, i might talk nonsense, but english is not my first language and it's late.
Thank you for the link!Sudi wrote:Beej's Guide to Network Programming
"Whoops..."
Just like Dorth said, theoretically speaking everything is a wrapper. even assembly could be a wrapper to firmware, and firmware to hardware.randomMesh wrote:I'd distinguish between a library and API. For me, Irrlicht is a wrapper for the OpenGL and DirectX API.Dorth wrote:"Just wrappers". I disagree. They have a huge amount of weight lifting and logic behind. And if you think such functionalities are just wrappers, then every api ever or nearly can be considered "just" a wrapper of lower stuff down to assembly...
And network libraries would be wrappers to, for example, the Winsock API.
That's why i don't like to use all these irr* wrappers here in the forums. The is no point in wrapping a wrapper.
Well, i might talk nonsense, but english is not my first language and it's late.
Thank you for the link!Sudi wrote:Beej's Guide to Network Programming
Hell, even nvidia/ati drivers are a wrapper!
I do think that the difference between a library and a wrapper is in the implementation size. of course the size is relevant too. Also a wrapper is something that just simplifies lower level functions. Irrlicht does more than that ( and every other graphics engine as well ). In this context, IMHO Irrlicht is not just a wrapper. It's a library ( with it's own API )
Imho a wrapper just converts data from one lib to another (in my case: Irrlicht to ODE). But as I spent too much time trying to implement everything myself in the past I just *love* all the wrappers and other libs I can get (and I need).
Dustbin::Games on the web: https://www.dustbin-online.de/
Dustbin::Games on facebook: https://www.facebook.com/dustbingames/
Dustbin::Games on twitter: https://twitter.com/dustbingames
Dustbin::Games on facebook: https://www.facebook.com/dustbingames/
Dustbin::Games on twitter: https://twitter.com/dustbingames
That shows that you are an idiot, not the other guy!omar shaaban wrote:well it seems you are the one who is 14 years old, because who would believe i read millions and millions of tutorials just to learn c++(its an expression)
I understand ent1ty, cause I hate it when people talk poop too. "I'm so smart, even if I do say so myself".. that kind of crap.
Like ent1ty says, he tries to be precise when commenting, and that has a lot to be respected.
Mate, my IQ is 150 too. It's not as high as you think. Real geniuses have IQ's of 160, 180 or 200. But they might not know how to crack onto chicks or drive a car. lol. (not necessarily but often) There is a big difference between 150 and 180, it's 2 standard deviations away.omar shaaban wrote:yes and if learning c++ in 10 days is unbelievable to you, then let me tell ya its normal and off the topic i am very smart(although programming doesn't depend mainly on intelligence) my IQ is nearly 150
So I know from experience that an IQ of 150 is not high enough to understand everything as soon as you see it! 10 days.. yea right!
Most of all, I don't know why anyone even bothers answering your questions about networking. If you could learn C++ in 10 days I'm sure you can learn all the networking in another week or two. Huh?
Too many? But you are so highly intelligent so why don't you just read all the books and you'll know everything?omar shaaban wrote:B@z dont care about him he maybe drunk or just a kid trying to waste time....i red the documentation of racknet it seems simple and organized i guess i will have to see it also (too many libraries and api s )
I basically agree with this. You may as well just integrate the original library into your game engine or whatever you making... and call the library functions directly. The person using your engine has to learn how to use the libraries that your engine depends on, just provide them with a pointer directly to the other library. Otherwise you are just restricting them from using the whole API. If you only want a small subset of the functionality that is different. But people usually make wrappers intending to implement the whole API... I don't get it really..randomMesh wrote:That's why i don't like to use all these irr* wrappers here in the forums. The is no point in wrapping a wrapper.
This is what a wrapper should be.Mirror wrote:Also a wrapper is something that just simplifies lower level functions.
Why wrap a high level API? It won't get any easier to use!
There is no point doing it just so that it uses irrlicht data types. That is a waste of time.
I suppose if for example you are using a physics engine, you may need to update the scene manager after updating physics, but you don't need a wrapper for that. You just need an interface between the API's.
I can hear birds chirping
I live in the Eye of Insanity.
I live in the Eye of Insanity.
-
- Posts: 1186
- Joined: Fri Dec 29, 2006 12:04 am
Please don't get me wrong. I really love these wrappers too, because of the time and work people spend to ease other peoples' life. Not to forget the good talks on IRC about optimization. Much appreciated.Brainsaw wrote:But as I spent too much time trying to implement everything myself in the past I just *love* all the wrappers and other libs I can get (and I need).
I just don't want to use them because they often hide valuable features of the original API.
Yes, correct.Ulf wrote: Why wrap a high level API? It won't get any easier to use!
There is no point doing it just so that it uses irrlicht data types. That is a waste of time.
"Whoops..."
That's true. I have given the advice to use my IrrODE wrapper as a "starting point" to some people and to add additional features they need, or to just copy the ODE trimesh creation code (which caused some headaches back then ) so they don't have to re-invent it.randomMesh wrote: [...]
I just don't want to use them because they often hide valuable features of the original API.Ulf wrote: [...]
Last edited by Brainsaw on Fri Apr 16, 2010 5:39 am, edited 1 time in total.
Dustbin::Games on the web: https://www.dustbin-online.de/
Dustbin::Games on facebook: https://www.facebook.com/dustbingames/
Dustbin::Games on twitter: https://twitter.com/dustbingames
Dustbin::Games on facebook: https://www.facebook.com/dustbingames/
Dustbin::Games on twitter: https://twitter.com/dustbingames
I agree with Brainsaw. I love the wrappers available here on the forum. And like his irrODE also, in irrBullet, I provide pointers to every interface used and provide base classes so that people can build off of it if they need to, or use functions not yet implemented.
And yeah, the use of wrappers really opens up some cool pathways on how to optimize and do things differently; moreover, people can pick around the code and use what they need if they don't want to use the whole thing.
And yeah, the use of wrappers really opens up some cool pathways on how to optimize and do things differently; moreover, people can pick around the code and use what they need if they don't want to use the whole thing.