Whats going on ?

Post your questions, suggestions and experiences regarding game design, integration of external libraries here. For irrEdit, irrXML and irrKlang, see the
ambiera forums
Dorth
Posts: 931
Joined: Sat May 26, 2007 11:03 pm

Post by Dorth »

"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...
randomMesh
Posts: 1186
Joined: Fri Dec 29, 2006 12:04 am

Post by randomMesh »

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...
I'd distinguish between a library and API. For me, Irrlicht is a wrapper for the OpenGL and DirectX API.
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. :wink:
Thank you for the link!
"Whoops..."
Mirror
Posts: 218
Joined: Sat Dec 01, 2007 4:09 pm

Post by Mirror »

randomMesh wrote:
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...
I'd distinguish between a library and API. For me, Irrlicht is a wrapper for the OpenGL and DirectX API.
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. :wink:
Thank you for the link!
Just like Dorth said, theoretically speaking everything is a wrapper. even assembly could be a wrapper to firmware, and firmware to hardware.
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 )
Brainsaw
Posts: 1176
Joined: Wed Jan 07, 2004 12:57 pm
Location: Bavaria

Post by Brainsaw »

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
Ulf
Posts: 281
Joined: Mon Jun 15, 2009 8:53 am
Location: Australia

Post by Ulf »

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)
That shows that you are an idiot, not the other guy!
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.
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
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.

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?
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 )
Too many? But you are so highly intelligent so why don't you just read all the books and you'll know everything?
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.
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..
Mirror wrote:Also a wrapper is something that just simplifies lower level functions.
This is what a wrapper should be.
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
:twisted:

I live in the Eye of Insanity.
randomMesh
Posts: 1186
Joined: Fri Dec 29, 2006 12:04 am

Post by randomMesh »

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).
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.

I just don't want to use them because they often hide valuable features of the original API.
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.
Yes, correct.
"Whoops..."
Brainsaw
Posts: 1176
Joined: Wed Jan 07, 2004 12:57 pm
Location: Bavaria

Post by Brainsaw »

randomMesh wrote: [...]
I just don't want to use them because they often hide valuable features of the original API.
Ulf wrote: [...]
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.
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
cobra
Posts: 371
Joined: Fri Jan 23, 2009 2:56 am
Location: United States
Contact:

Post by cobra »

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.
Josiah Hartzell
Image
Post Reply