defos icon indicating copy to clipboard operation
defos copied to clipboard

Feature wishlist

Open subsoap opened this issue 8 years ago • 19 comments

Posting here as a reminder

  • set_video_mode - change current video mode to be windowed / fullscreen / window borderless etc.
  • restore_video_mode - change back to previously saved video mode
  • get_monitors - get list of monitors to be able to set fullscreen on primary or secondary monitors ~~* using custom hardware cursors~~ ~~* changing window icon~~ ~~* setting min / max window sizes? or let user define that?~~ ~~* force aspect ratio when window is scaled in window mode?~~ no, let user do this
  • enable/disable window decoration ~~* add enable versions of existing functions~~
  • gamma ramps?
  • get raw key input? possibly problematic because might interfere with engine ~~* Change window title~~ ~~* lock mouse to window~~ ~~* set mouse cursor position~~
  • change resolution of fullscreen window
  • get list of supported resolutions of monitor ~~* disable locking of mouse cursor at center of screen (what defold does in fullscreen mode atm + it auto disables mouse cursor)~~ possible, but just don't use Defold's built in fullscreen option

subsoap avatar May 04 '17 01:05 subsoap

Do we have some priorities for a features? And sync between windows and macos platforms?

For example I can implement for macOS: toggle_fullscreen or set_video_mode with constants is_fullscreen Change window title

But maybe have sence to wait when it will be implemented on Windows?

AGulev avatar May 04 '17 19:05 AGulev

Make issues for anything you think is high priority and I'll work on other versions over time. High priority features should be ones that a game needs to release on Steam successfully. Things users expect and increase their quality of life as they play the game.

You do not have to wait. Go ahead and implement anything you feel like and I'll try to do the Windows versions when I can. @chaosddp will probably help with Windows over time too I hope.

subsoap avatar May 05 '17 00:05 subsoap

Of curse, I can try to implement the Windows version, though I am not familiar with win32. :)

chaosddp avatar May 05 '17 02:05 chaosddp

Probably going to need to wait 1-2 weeks until we do a 1.0 release for when Native Extensions are released on Windows / Linux then everything can be done with Native Extensions. Right now I can't do the Linux work because ffi can't be used at all apparently so I'll help to finish Win/Mac until NE go live for everything. I think I'll make a formal priority list and todo based on what I know is needed for releasing on Steam - which is honestly already close to being done thanks to you two all is left is some quality of life features. It's nice that @britzl already made Steamworks runtime extension and it should be easy to make Win/Linux version of that too once NE is released for both.

subsoap avatar May 08 '17 04:05 subsoap

@subsoap @chaosddp What about defos.toggle_maximize() method?

AGulev avatar May 11 '17 07:05 AGulev

That would probably be a good one. The toggle is between maximize / restore on win

subsoap avatar May 11 '17 08:05 subsoap

added the defos.toggle_maximize and defos.is_maximize for Windows, but i have to restore the fullscreen state first

chaosddp avatar May 11 '17 14:05 chaosddp

Done for macOS too. Closed an issue #6

AGulev avatar May 11 '17 21:05 AGulev

There is native extensions for Windows now. I'll play with it this weekend to get some features done.

subsoap avatar Jul 11 '17 22:07 subsoap

Doing some Windows work now just a heads up. Edit: False alarm but I'm trying to make sure I'll have time this weekend...

subsoap avatar Jul 19 '17 21:07 subsoap

Later I will have a try too, though i am not familiar with c/c++. :)

chaosddp avatar Jul 27 '17 02:07 chaosddp

Multiple windows at the same time would be interesting. Just imagine snake or pong with diffrent windows.

VincentLagerros avatar Feb 23 '18 19:02 VincentLagerros

@VincentLagerros Could you clarify?

subsoap avatar Feb 23 '18 20:02 subsoap

A feature that makes it possible to lunch multible windows, all in the same game. Pong with 3 windows, one for each padle and one for the ball. Inconvinient, but funny af. You controll a window, not a character in a window, the window itself.

VincentLagerros avatar Feb 23 '18 21:02 VincentLagerros

It is probably possible. Probably easiest way to do it would be to render to texture in a render script, and then display a different texture on each window context.

Then you have to figure out how to make and manage the different window contexts.

I doubt any of us will spend time to implement this though but you could look into supporting multiple windows and having some way to display specific things to each.

subsoap avatar Feb 23 '18 22:02 subsoap

The only thing I need to make this possible, is a way to lunch Defold from Defold.

VincentLagerros avatar Feb 24 '18 10:02 VincentLagerros

Three copies of the engine running is different from three window contexts controlled by the same engine.

Launching more copies would be easy if you have a good way to communicate between running copies.

subsoap avatar Feb 24 '18 15:02 subsoap

Right now I am saving and loading data from a text document, not very efficient but better then nothing. Launching more windows whould be fine by me

VincentLagerros avatar Feb 24 '18 16:02 VincentLagerros

Done with set_window_icon method for html5, windows and macos

Merged, Thanks @dapetcu21 for a help

AGulev avatar Feb 28 '18 11:02 AGulev