Commit Graph

1651 Commits

Author SHA1 Message Date
Sam Edwards 4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06:00
bfrisby2000 7c375ac531
showbase: Add blendType argument for Fade/Iris/Letterbox
This allows the 'blendType' argument to be passed through the three transitions' Lerp Intervals.
2018-08-07 20:23:16 -04:00
Sam Edwards b2bfb31114 general: Remove `using std::*` from headers
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.

Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
rdb 8c80ff1681 Audio3DManager: remove sounds when attached object is deleted
This now uses WeakNodePaths in order to prevent holding a reference to the corresponding nodes.

Closes #145
2018-05-20 18:46:27 +02:00
rdb 71eee6df3f showbase: make iris/fade/letterbox transitions awaitable
This allows using a coroutine to build up a more complex sequence including transitions (eg. scripted cutscene), as well as provide a standard way to register callbacks upon completion of the transition.
2018-05-05 23:05:50 +02:00
rdb cf58de4d04 showbase: make base.movie() awaitable (by returning a future) 2018-05-05 23:02:11 +02:00
rdb 11e21af52c showbase: fix iris/fade transitions for extreme aspect ratios
Fixes #311
2018-05-05 22:08:52 +02:00
rdb f986f8de1b showbase: add back clampScalar and PriorityCallbacks to PythonUtil
These were removed by 88dbb31daa under the assumption that they were not used, but it has recently come to my attention that there is still code out there that uses these.

PriorityCallbacks has been updated to be compatible with Python 3 by only comparing the priority, rather than the (priority, callback) tuple. This also has the side-effect of ditching the bisect dependency.

Also moves testing code from the source to the unit tests.
2018-04-21 11:43:46 +02:00
Sam Edwards 9dd37e9dbc general: Add guards to ensure proper BUILDING_ macros defined
This is designed to sanity-check the buildsystem, ensuring that the
expected BUILDING_ macros are defined at the expected time. It
also helps catch cases where the wrong BUILDING_/EXPCL_ macros
are used.
2018-03-25 13:17:52 -06:00
Sam Edwards f231ba4cd7 directbase: Introduce BUILDING_ defines for each component
Ditto everything before, but for direct.
2018-03-25 13:17:52 -06:00
rdb b0b32b9d6a direct: fix Python 3 support in Pmw-based tools
Fixes #276
2018-03-08 11:21:14 +01:00
Michael Wass 89799bc024 direct: Fix some NameErrors
Squashed merge of GitHub PR #273
2018-03-05 18:32:27 -07:00
rdb b62435a373 general: remove all uses of deprecated upcastTo*() methods
These methods have not been needed for a very long time, so we should not encourage their use.
2018-02-27 15:02:49 +01:00
rdb aa90b7b0c0 showbase: disable track-gui-items by default, remove want-e3-hacks 2018-02-23 22:26:27 +01:00
rdb e6c2d3b609 showbase: allow DirectGui elements to be created before ShowBase
This is done by precreating aspect2d inside ShowBaseGlobal.
2018-02-23 22:15:34 +01:00
rdb 0cf605ce7d showbase: move run() and __dev__ to ShowBaseGlobal
Also remove ShowBaseGlobal notify category, it doesn't really add anything
2018-02-23 21:26:49 +01:00
rdb bdb53b8cb5 showbase: fixes for aspect-ratio adjustment of pixel2d(p) 2018-01-05 19:49:14 +01:00
rdb 27fb1a4a9e showbase: fix aspect ratio calculation
backs out part of 7a46b2ca60, from PR #204
2018-01-05 15:00:21 +01:00
rdb 4f50f6abd0 showbase: use ShowBaseGlobal module as alternative to builtin scope
Allows accessing `base` object and several other builtins from the ShowBaseGlobal module.

It doesn't bother with builtins that are available as members of the base object such as `render` and `loader`.

Fixes #182
2018-01-03 14:25:27 +01:00
deflected e4a817b469 Loader: Fixed crash when canceling async loading of model
- Clean up the _loader after we clean up the requests,
        not before that

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-13 13:42:29 +02:00
deflected bdd53d60fc ShowBase: Fixed crash when want-render2dp is False
- Fixed crash in ShowBase when want-render2dp setting
        is set to 0(False).

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-04 22:46:30 +01:00
deflected 7a46b2ca60 ShowBase: Minor fixes over aspect ratio and size calculations
- Do not take into accound SBS if it is not enabled
        - Always return value for getSize()
        - Properly handle SBS for window-events
        - Redo positioning of aspect2d(p) markers exactly as
        they are created when adjusting aspect ratio

Signed-off-by: deflected <deflected@users.noreply.github.com>
2017-12-04 22:46:22 +01:00
rdb 2e20a0f16e Implement awaitable thread-safe future for async operations
This introduces AsyncFuture as a new base class of AsyncTask.  It's modelled after asyncio's Future class, except that it is thread-safe and you can use result() to block the current thread waiting for the future to finish (of course this is not necessary for use with coroutines).

AsyncFuture should be used for any operation that finishes in the future, to get the benefit of awaitability within coroutines as well as a standard interface for querying status and results of the operation as well as cancelling it.  As such, it's been implemented in various places, including texture.prepare() and win.trigger_copy().

Note that AsyncFuture is intended to be used *once*; it cannot be used more than once.  As an example of how this works, tex.prepare() will return the same future as long as the prepare isn't complete, but when it is done, subsequent calls to tex.prepare() will return a new future.
2017-12-04 22:25:28 +01:00
fireclawthefox 936ef1953c Small extensions for the mirror demo
Add extra parameters for buffer size and clear color
Add sample code at the bottom to display usage of mirror demo

Closes: #195
2017-11-12 00:19:50 +01:00
fireclawthefox feb36d9818 Fixed mirror demo
Set "mirror" camera to always have the same roll as the mirror
-> otherwise the model in the mirror will move unexpectedly
Set y coordinate of the mirror corners to the cameras distance
-> This fixes a crash and keep the mirrored model at correct sizer

Closes: #194
2017-11-12 00:15:58 +01:00
fireclawthefox 649a9abf8d Fix initial usage of letterbox
Set start position of letterbox frames to the hidden position

Closes: #193
2017-11-12 00:06:13 +01:00
rdb 0c0f9adab9 Support coroutines and async/await in the task manager and loader 2017-10-31 18:56:41 +01:00
wezu 40c6f41da2 direct: provide snake_case functions for some classes
Closes #147
2017-06-20 21:56:03 +02:00
rdb d576c6b638 Improvements to generated API docs, especially in direct tree.
Also add an entry point for pfreeze.
2017-05-24 13:30:21 +02:00
wezu 353ccfebc1 Remove print() from Messenger.find() and Messenger.findAll()
If one needs to use find() or findAll() not for debugging purposes (like for getting the function or arguments for some binding), then the print functions in these methods are really unwelcome. find() is the only nice way to get this info (other then de-name-mangling __callbacks)
2017-04-22 13:39:14 +02:00
rdb 83507e413f Fix Mac OS X Snow Leopard build 2016-12-05 16:30:44 -05:00
rdb f1f4951fb5 Merge remote-tracking branch 'origin/release/1.9.x' 2016-10-13 00:25:57 +02:00
rdb f363088cb2 Fix exception when creating intervals before ShowBase is started 2016-09-30 00:21:12 +02:00
deflected 234e7eefee loader: Added loading of 2D texture array
Signed-off-by: deflected <deflected@users.noreply.github.com>
2016-09-12 13:21:23 +03:00
rdb 70f10a70d1 Merge branch 'release/1.9.x' 2016-09-12 00:48:03 +02:00
rdb 3ce808c705 Fix in-place asyncFlattenStrong 2016-09-11 20:28:33 +02:00
rdb 4ec5b77678 Fix error with async flatten 2016-08-27 20:11:18 +02:00
rdb 67998eaec2 Buffer viewer should override texture filter settings; fixes filtered shadow maps and edge bleeding 2016-08-27 19:24:23 +02:00
rdb 47388b0dbc Separate out CPython calls from core libs; eliminate need for pystub 2016-07-20 14:30:41 +02:00
Sam Edwards 0846a89677 general: Stop using several deprecated pandac.PandaModules imports. 2016-06-27 00:06:40 -07:00
rdb f068a8613b Fix a few unnecessary uses of exec/eval 2016-06-22 13:50:58 +02:00
rdb 4283a63a7d Merge branch 'release/1.9.x' 2016-06-11 01:29:14 +02:00
rdb 12873c0d7e Fix wxPython and tkinter issues on Mac OS X 2016-06-10 02:02:36 +02:00
rdb 7a681dc993 Python 3 fixes for rtdist builds 2016-05-29 02:01:57 +02:00
John Cote c896f7269b bugfix: Add missing import to ShowBaseGlobal (#96) 2016-04-17 09:09:55 +02:00
rdb 902a314f68 Remove unused squeeze tool 2016-04-13 17:28:08 +02:00
rdb 516e88c8fc Fix to unbreak travis test script 2016-03-28 23:20:26 +02:00
rdb 23bf9ea5c7 The direct tree is now valid Python 2 *and* 3 2016-03-28 22:33:30 +02:00
rdb 54fa31ba17 StandardError -> Exception, other 2to3 changes, threaded 2to3 2016-03-25 17:13:09 +01:00
rdb 6334f2511d Let's not display deprecation warnings in release builds 2016-03-25 16:41:58 +01:00