Commit Graph

89 Commits

Author SHA1 Message Date
Hajime Hoshi
2b1e961540 ebiten: Remove old comments 2021-11-27 18:33:51 +09:00
Hajime Hoshi
5031ab67a7 ebiten: Refactoring: Remove uiContext.outsideSizeUpdated 2021-11-27 18:21:04 +09:00
Hajime Hoshi
42c1427c0b ebiten: Avoid unnecessary creations of c.screen
Updates #1884
2021-11-27 18:19:15 +09:00
Hajime Hoshi
fb04b0d004 ebiten: Refactoring 2021-08-05 01:48:56 +09:00
Hajime Hoshi
0bc5166a36 driver: Refactoring: Rename functions 2021-08-05 01:29:45 +09:00
Hajime Hoshi
60b8f82bfd graphicscommand: Dump internal image info on the debug mode
Closes #1714
2021-08-05 01:16:42 +09:00
Hajime Hoshi
38ce325958 internal/graphicsdriver/metal: Skip clearing the screen on Metal 2021-07-07 01:45:51 +09:00
Hajime Hoshi
c725937cc6 internal/graphics: Reuse the vertices backend
This is basically a reland of 9cb631e30f.
This change locks the vertices backend at the end-frame phase to
protect from vertices usages by other goroutines.

Updates #1546
Closes #1681
2021-06-27 02:31:01 +09:00
Hajime Hoshi
1d83df0c13 ebiten: Refactoring 2021-06-27 01:46:35 +09:00
Hajime Hoshi
7e1943dba7 Revert "ebiten: Do not skip Draw when vsync is disabled"
This reverts commit 7dda2d8e4b.

Reason: #1595: FPS doesn't match with the number of Draw calls per second when vsync is off.

Updates #1520
Closes #1595
2021-04-19 11:34:59 +09:00
Hajime Hoshi
73f90f324f ebiten: Bug fix: ForceUpdate could be called before initialization
Closes #1591
2021-04-19 00:35:32 +09:00
Hajime Hoshi
5cc8d8476b ebiten: Bug fix: Ignore the outside size when they are 0 at Layout
Closes #1589
2021-04-18 23:02:31 +09:00
Hajime Hoshi
19702619ee ebiten: Bug fix: AdjustPosition could return Inf
Before the initialization finishes, AdjustPosition could return Inf
values and in this case AdjustPosition's returning values don't make
sense. Let's return NaN in this case.

Closes #1545
2021-03-27 18:46:14 +09:00
Hajime Hoshi
c3ddc2089a ebiten: Update comments 2021-03-01 12:07:55 +09:00
Hajime Hoshi
7dda2d8e4b ebiten: Do not skip Draw when vsync is disabled
Closes #1520
2021-03-01 12:06:14 +09:00
Hajime Hoshi
0b30ed5959 Revert "ebiten: Skip calling Draw when the update count is 0"
This reverts commit 4d545b9ad8.

Reason: Restricting calls of Draw was counter-intuitive for users.
See the discussion at #1486
2021-02-09 23:32:30 +09:00
Hajime Hoshi
a0a8d41ff6 uidriver/js: Force to update the screen when resizing
Updates #1204
2021-01-18 01:17:58 +09:00
Hajime Hoshi
ce24640da8 ebiten: Ensure that Layout is called before Update in the first frame 2020-12-20 21:10:47 +09:00
Hajime Hoshi
4d545b9ad8 ebiten: Skip calling Draw when the update count is 0 2020-11-27 00:20:27 +09:00
Hajime Hoshi
e7fafb5527 ebiten: Add a new log to dump update count
Fixes #1425
2020-11-24 22:36:32 +09:00
Hajime Hoshi
1d82aec712 ebiten: Fix comments 2020-10-17 17:30:52 +09:00
Hajime Hoshi
1864c22ad6 uidriver/glfw: Reduce (*thread).Call at (*Input).update 2020-10-17 05:22:23 +09:00
Hajime Hoshi
d49d8db15d ebiten: Refactoring: Remove scaleForWindow 2020-10-15 02:29:04 +09:00
Hajime Hoshi
0aa98d3113 ebiten: Refactoring: Reduce calls of updateOffscreen 2020-10-15 02:26:31 +09:00
Hajime Hoshi
770661c609 driver: Refactoring: Remove (UIContext).Draw 2020-10-15 01:27:50 +09:00
Hajime Hoshi
c6053bcf14 ebiten: Remove the error returning value from NewImage
Updates #1380
2020-10-06 00:48:56 +09:00
Hajime Hoshi
54da0d9763 ebiten: Remove the returning value from (*Image).DrawImage
Updates #1380
2020-10-06 00:21:17 +09:00
Hajime Hoshi
525d16bec8 ebiten: Remove the returning value from (*Image).Dispose
Updates #1380
2020-10-06 00:13:23 +09:00
Hajime Hoshi
fe97e7b0a5 ebiten: Remove the filter argument from NewImage and NewImageFromImage
Updates #503
2020-10-05 01:40:44 +09:00
Hajime Hoshi
8f00c8fbf5 ebiten: Remove the argument from Update
Fixes #1260
2020-10-04 19:33:10 +09:00
Hajime Hoshi
81f336ac46 ebiten: Remove IsDrawingSkipped
Fixes #1127
2020-10-04 17:21:44 +09:00
Hajime Hoshi
ec6e4a16ce ebiten: Bug fix: Clear the offscreen every frame 2020-10-04 17:16:26 +09:00
Hajime Hoshi
ad07e31727 ebiten: Add Draw function to Game interface
Fixes #1368
2020-10-04 17:13:51 +09:00
Hajime Hoshi
bf515bb594 Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
Tom Lister
65d5b64d29
ebiten: Rename SetClearingScreenSkipped/IsClearingScreenSkipped functions (#1317)
Fixes #1315
2020-08-20 17:12:22 +09:00
Hajime Hoshi
7ec63acd1d ebiten: Bug fix: Set the state of being volatile on SetClearingScreenSkipped
Fixes #1309
2020-08-19 01:23:30 +09:00
Hajime Hoshi
8aef1f9080 restorable: Enable to set the 'volatile' state later
Updates #1309
2020-08-19 00:57:23 +09:00
Tom Lister
e96a1fb1c7
ebiten: Implement SetClearingScreenSkipped/IsClearingScreenSkipped (#1302)
Fixes #1132
2020-08-13 18:19:56 +09:00
Hajime Hoshi
f7f507e912 ebiten: Ensure that Update is called at least once before Draw in the first frame
Fixes #1155
2020-05-15 04:04:29 +09:00
Hajime Hoshi
697835a313 ebiten: Remove a redundant comment 2020-05-08 18:37:58 +09:00
Hajime Hoshi
8029dc352a driver: Use framebuffer's Y directions 2020-05-08 16:49:19 +09:00
Hajime Hoshi
8777140e91 driver: Simplify UIContext.Update 2020-04-03 00:18:27 +09:00
Hajime Hoshi
a4f6909710 ui: Add comments 2020-04-01 03:38:32 +09:00
Hajime Hoshi
4976460af3 ui: Refactoring 2020-04-01 03:02:32 +09:00
Hajime Hoshi
a718ddbf7e driver: Add UIDriver.Draw
This is a preparation for XNA.

Updates #1078
2020-04-01 02:55:50 +09:00
Hajime Hoshi
35eb9e77a0 ui: Improve comments about Game interface
This change also fixes comments in uiConttext, which seems pretty
old.
2020-03-31 02:04:27 +09:00
Hajime Hoshi
237498e51f
ui: Add an optional function Draw function to Game interface (#1107)
This change adds an optional function Draw to the Game interface.
With Draw function, the game logic and rendering are separate.
There are some benefits:

  * The API is clearer and easier to understand.
  * When TPS < FPS, smoother rendering can be performed without
    changing the game logic depending on TPS.
  * Porting to XNA, which has separate functions Update and Draw,
    would be a little easier.

Draw is optional due to backward compatibility. Game interface was
already used before v1.11.x in mobile packages, and adding a
function would break existing code unfortunately. Then, we adopted
switching the behavior based on whether Draw is implemented or not
by type assertions.

IsDrawingSkipped will always return false when Draw is implemented.

Fixes #1104
2020-03-24 12:01:37 +09:00
Hajime Hoshi
c927d33457 mobile/ebitenmobileview: Use the common uiContext for layouting
This means that the whole offscreen is cleared correctly.

This change is a little breaking change: SetScreenSize or other
functions no longer works on ebitenmobile. Use Layout instead.

Fixes #1019
2020-02-11 19:40:47 +09:00
Hajime Hoshi
024fc48647 Refactoring: Add init.go 2020-02-11 11:14:19 +09:00
Hajime Hoshi
b3bdf51905
graphicscommand: Return the error immediately (#1060)
Now grpahicscommand saves the error and shows the error after a
while. This was good to simplify the API but was the cause to hide
some issues.

This change fixes all the errors to be returned immediately, and
buffer this in the ebiten package instead.

Fixes #971
2020-01-19 01:18:56 +09:00