SFML community forums

Help => General => Topic started by: Infinity Squared Software on January 13, 2016, 03:11:50 pm

Title: SFML And Emulators?
Post by: Infinity Squared Software on January 13, 2016, 03:11:50 pm
Hey Guys!
I am looking to create a Gameboy emulator in C++ and need to choose a graphics library. Would SFML be able to work in an emulator or should I learn SDL?
Thanks!
Title: Re: SFML And Emulators?
Post by: zsbzsb on January 13, 2016, 03:24:46 pm
Why wouldn't it work? SFML doesn't care at all about what you are drawing.
Title: Re: SFML And Emulator
Post by: Mr_Blame on January 13, 2016, 03:29:27 pm
If you want to make emulators then sfml and sdl are bad choice you need some low-level graphics api like pure opengl to make emulator, vecause you need to "translate" the bute code to of executable. To translate it you need to provide an alternative to functions that it calls. For exmaple on original platform we have a call to procedure graphics_create_texture, how will you handle it with sfm? You need normal Opengl function - glCreateTexture. If you still misunderstood this then you should understand how wine emulator works.
Title: Re: SFML And Emulator
Post by: zsbzsb on January 13, 2016, 03:46:22 pm
If you want to make emulators then sfml and sdl are bad choice you need some low-level graphics api like pure opengl to make emulator, vecause you need to "translate" the bute code to of executable. To translate it you need to provide an alternative to functions that it calls. For exmaple on original platform we have a call to procedure graphics_create_texture, how will you handle it with sfm? You need normal Opengl function - glCreateTexture. If you still misunderstood this then you should understand how wine emulator works.

What? Huh?

He is asking about a Gameboy emulator. As for needing 'pure opengl' you still need a windowing library to use OpenGL. Even if he wanted to write pure gl code he still needs SFML/SDL/GLFW. Next time please understand the question before writing stuff that doesn't make much sense. SFML will be fine for what the OP wants to do.
Title: Re: SFML And Emulator
Post by: Hapax on January 13, 2016, 10:23:40 pm
you need to "translate" the bute code to of executable. To translate it you need to provide an alternative to functions that it calls.
That's called "emulation".

For exmaple on original platform we have a call to procedure graphics_create_texture, how will you handle it with sfm? You need normal Opengl function - glCreateTexture.
You don't have to do what it used to do, you have to emulate what it used to do.
Title: Re: SFML And Emulator
Post by: mkalex777 on January 20, 2016, 09:52:28 pm
If you want to make emulators then sfml and sdl are bad choice you need some low-level graphics api like pure opengl to make emulator, vecause you need to "translate" the bute code to of executable. To translate it you need to provide an alternative to functions that it calls. For exmaple on original platform we have a call to procedure graphics_create_texture, how will you handle it with sfm? You need normal Opengl function - glCreateTexture. If you still misunderstood this then you should understand how wine emulator works.

What? Huh?

He is asking about a Gameboy emulator. As for needing 'pure opengl' you still need a windowing library to use OpenGL. Even if he wanted to write pure gl code he still needs SFML/SDL/GLFW. Next time please understand the question before writing stuff that doesn't make much sense. SFML will be fine for what the OP wants to do.

Pure opengl will be better, actually there is no need for these bloated frameworks with 10-100 megabyte libraries just to open opengl window :)
Title: Re: SFML And Emulators?
Post by: victorlevasseur on January 21, 2016, 12:14:04 am
Quote
If you still misunderstood this then you should understand how wine emulator works.
By the way, Wine Is Not an Emulator.

Quote
with 10-100 megabyte libraries just to open opengl window :)
But it still needs a library to open a window and pure OpenGL can't do anything about it. So, he needs SFML, SDL or GLFW.