Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: SFML engine  (Read 4566 times)

0 Members and 1 Guest are viewing this topic.

Light_cannon

  • Newbie
  • *
  • Posts: 4
    • View Profile
    • Email
SFML engine
« on: March 27, 2017, 11:39:01 am »
Hello SFML-ers :D

I am new here and sorry if this is not the right place for my post.

I am a beginner in SFML ( but not in game dev ), I have used Game Maker Studio long time before coming to SFML.
The first thing came to my mind when entering SFML, how could a one manage all the huge resources in the game? They are all listed in source code rather than being organized in an easy-to-use interface like in GM
( I hope I have made it clear)
My question is there an IDE that is based on SFML and provide such things? if not, how could I manage my resources efficiently ?

If I wanted to develop an IDE based on SFML ( same idea of GM but uses SFML, in another words, building a GUI that organizes everything and make the developer only focusing in game flow rather than loading sprites,..etc ) , Can it be possible ? where to start? and have any one started a project like that so that I can learn from him?

Thanks in advance.

Hapax

  • Hero Member
  • *****
  • Posts: 3346
  • My number of posts is shown in hexadecimal.
    • View Profile
    • Links
Re: SFML engine
« Reply #1 on: March 27, 2017, 12:43:30 pm »
Hi! :)

First, to clarify: SFML is not an engine.
It's simply a library that is used to help with certain multimedia (and some other) tasks within a programming language.

Programs are written in C++ (or some binding) and SFML is called upon for some tasks. However, management of resources are, like any other program you may write in the same language, managed by your program in that language.

A simple solution is to collect them all into a struct/class, maybe using vectors to collect similar types. That way the class object can be passed around as a single object.

There are, of course, better and more complex solutions. One example of a resource manager with a better design is included in the Thor library.

To create an IDE based on SFML, you are likely to need some form of GUI. Although it's possible to create your own using SFML, there are already some available.
e.g. SFGUI, TGUI, ImGui.
These are GUI solutions using SFML itself. However, you may wish to use more native GUI systems.  Commonly mentioned ones are: Qt and wxWidgets.
Selba Ward -SFML drawables
Cheese Map -Drawable Layered Tile Map
Kairos -Timing Library
Grambol
 *Hapaxia Links*

Light_cannon

  • Newbie
  • *
  • Posts: 4
    • View Profile
    • Email
Re: SFML engine
« Reply #2 on: March 27, 2017, 03:30:13 pm »
First, thank's for your answer

It seems i haven't made the IDE question clear enough, I mean I wan to create something like GM studio ( sure not exactly :D ) but instead of coding with GML, coding in SFML c++ based. This to make me only concentrate on the game flow and events and isolate anything else from details ( ex: I can load an image and animate it without doing everything my self such as calling classes,..etc but few button clicks and everything will be handled by SFML )

I hope this part is clear now.

Hapax

  • Hero Member
  • *****
  • Posts: 3346
  • My number of posts is shown in hexadecimal.
    • View Profile
    • Links
Re: SFML engine
« Reply #3 on: March 28, 2017, 01:02:37 am »
I think it was actually clear; you want to create an IDE to create games in a similar way to GM using C++ and SFML. The answer is: you have to create that IDE and I suggested some things that may help with the create of that application.
That said, there a few "engines" and/or "frameworks" using SFML that may be closer to what you need.

However, if you need graphical interaction to create the main forms of the program, you will probably need to create that application yourself since I don't think one exists for SFML. The scripting, however, could use a number of languages: you could use C++ directly, one of its bindings, or something like Lua.
Selba Ward -SFML drawables
Cheese Map -Drawable Layered Tile Map
Kairos -Timing Library
Grambol
 *Hapaxia Links*

Turbine

  • Full Member
  • ***
  • Posts: 102
    • View Profile
Re: SFML engine
« Reply #4 on: March 28, 2017, 01:38:15 am »
Why would you want to make an IDE? The major ones have debugging, code completion and many other tools. Things like collisions and such are left up to you. Just externalise everything.

I think you're missing the point how much better C++/SFML is compared to GameMaker. GameMaker is a disaster of a program and it's lack of a decent programming language makes it impossible to make a clean - large scale project.

Light_cannon

  • Newbie
  • *
  • Posts: 4
    • View Profile
    • Email
Re: SFML engine
« Reply #5 on: March 28, 2017, 11:07:49 am »
Quote
The scripting, however, could use a number of languages: you could use C++ directly, one of its bindings, or something like Lua.

I did not get this, I really found that Lua is embedded in many game engines and generally game-related softwares, but I didn't get its role, what will be its role along with SFML ?


Quote
GameMaker is a disaster of a program and it's lack of a decent programming language makes it impossible to make a clean - large scale project.

I also didn't understand your opinion, I have seen large scale ( to some extent) projects using it, so can you explain more

Turbine

  • Full Member
  • ***
  • Posts: 102
    • View Profile
Re: SFML engine
« Reply #6 on: March 28, 2017, 12:17:37 pm »
Quote
The scripting, however, could use a number of languages: you could use C++ directly, one of its bindings, or something like Lua.

I did not get this, I really found that Lua is embedded in many game engines and generally game-related softwares, but I didn't get its role, what will be its role along with SFML ?


Quote
GameMaker is a disaster of a program and it's lack of a decent programming language makes it impossible to make a clean - large scale project.

I also didn't understand your opinion, I have seen large scale ( to some extent) projects using it, so can you explain more

I started using GameMaker in 2001 with version 4.0, I used up up until 2007. There was a reason every single big/MMO project would go down for endless iterations of recoding. GML (GameMaker Language) just didn't support actual object orientated design like C++. (Objects couldn't even have functions, instead you'd have a whole list of scripts using prefix's) Another issue was it's lack of types, it used variant data types - which could switch between either a fractional value or a string. So you'd only find many errors only after stumbling into them.

There's just too many flaws in GM as a serious game development tool - most limitations are derived from their integrated tools and the internal engine which incorporates your program. Perhaps it's changed in recent years - but they'd need to completely integrate a proper language like C++/Java/C#/etc.

Hapax

  • Hero Member
  • *****
  • Posts: 3346
  • My number of posts is shown in hexadecimal.
    • View Profile
    • Links
Re: SFML engine
« Reply #7 on: March 28, 2017, 12:27:56 pm »
It doesn't sound like you want to write a program and use a library rather use an engine and control it with a script.

Maybe you'd want to consider something like the Unreal Engine...
Although, they've even moved away from their scriping language and now use C++...
Selba Ward -SFML drawables
Cheese Map -Drawable Layered Tile Map
Kairos -Timing Library
Grambol
 *Hapaxia Links*

Light_cannon

  • Newbie
  • *
  • Posts: 4
    • View Profile
    • Email
Re: SFML engine
« Reply #8 on: March 28, 2017, 01:24:24 pm »
It doesn't sound like you want to write a program and use a library rather use an engine and control it with a script.

Maybe you'd want to consider something like the Unreal Engine...
Although, they've even moved away from their scriping language and now use C++...

not exactly ture, what I really want to write an engine fully-based on SFML, so I still want to write a program and use a library but in a generic way so that I can use it in my projects without going again in details of SFML ( i.e : increase the abstraction ) as well as integrating it with scripts to make some tasks easier like LUA ( although I didn't know really what is lua role and what it will make easy and what not.)

That what I wish reach and hope to find an entry point to this.

Thanks

DarkRoku12

  • Full Member
  • ***
  • Posts: 203
  • Lua coder.
    • View Profile
    • Email
Re: SFML engine
« Reply #9 on: March 29, 2017, 07:02:49 pm »
It doesn't sound like you want to write a program and use a library rather use an engine and control it with a script.

Maybe you'd want to consider something like the Unreal Engine...
Although, they've even moved away from their scriping language and now use C++...

not exactly ture, what I really want to write an engine fully-based on SFML, so I still want to write a program and use a library but in a generic way so that I can use it in my projects without going again in details of SFML ( i.e : increase the abstraction ) as well as integrating it with scripts to make some tasks easier like LUA ( although I didn't know really what is lua role and what it will make easy and what not.)

That what I wish reach and hope to find an entry point to this.

Thanks

If you're interested, i'm finishing of developing a SFML based engine, but the user do code in Lua only. if you need more details you can contact me for PM.
I would like a spanish/latin community...
Problems building for Android? Look here