overte-org / overte Goto Github PK
View Code? Open in Web Editor NEWOverte open source virtual worlds platform.
Home Page: https://overte.org/
License: Other
Overte open source virtual worlds platform.
Home Page: https://overte.org/
License: Other
GIF is amazingly obsolete and creates huge, low quality files.
We should integrate a proper video encoder.
It fills about half of the window's width and height, always the same size and centred. It is a simple gradient fill-- the top left is green, top right is yellow, bottom right is red, and bottom left is black (I think). Tablet apps layer on top of the rectangle.
It disappears and reappears as I look around and move my avatar (either one). I think it appears when my avatar is looking toward the top part (not legs) of the Quick Setup console, even when my view of if it is obstructed.
Did not occur the one time I started the AppImage with my avatar in another domain and then clicked the Tutorial button in the top menu bar, but then it did appear after I clicked the button to clear all caches. Changing the graphics setting profile does not seem to change the behaviour.
Linux version 5.15.26
nvidia-firmware-340.32-r1
nvidia-drivers-470.103.01
There's a bunch of URLs like https://cdn-1.vircadia.com/us-e-1/Bazaar/Avatars/Mike/img/icon.png all over the code.
Since Vircadia doesn't like us, we should switch to an alternative.
I think it would be a good idea to change ~/.config/Overte*/Interface.json
to ~/.config/Overte*/Interface/config.json
. It might also be good to move some (possibly all) of the things in ~/.local/share/Overte*/
to that new directory.
Overte is known to display colors in significantly different way than for example Blender. Maybe this warning may point to the cause?
I am in the process of reworking the GitHub Actions workflows and getting builds to upload to an S3 again.
Continuous mouse look like in FPP games.
right now, when an avatar is equipped, the interface gets the thumbnail image by looking for a .jpg in the same folder with the same name as the fst file. i would like to suggest a field in the fst file that lets you specify a link to the thumbnail image, with the current behavior being the default for when this field is not provided.
Right now, we can only have a sun painted on a skybox texture... it does look a bit flat for a light source of that intensity.
It would be cool if we could have a real source of light visible (and optional).
Something using the same effect that we do for bloom.
Currently the code needs data from https://athena-public.s3.amazonaws.com
This URL will be going away.
There have been problems related to the QtWebEngine version, and some distros upgrade it independently of the rest of Qt, so the webengine may not be what comes out of the box with that Qt version.
Should they be enabled by default?
Right now they are disabled by default and hidden in developer menu.
Ambient Occlussion toggle should also be exposed in graphics in my opinion.
Currently settings like avatars etc are stored locally only which means for every different installation (computer, laptop etc) would require a user to set their preferences up again - for things like custom avatar URLs this will provide a negative user experience I believe.
It would be good if customisable settings which are not machine-related (graphics settings, etc) can be stored/synced with their account information server-side to prevent this negative experience.
They appear for example in Tutorial world. What does Interface use SQLite for?
[386324:386503:0603/000144.679934:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: PRAGMA auto_vacuum
[386324:386503:0603/000144.679994:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: PRAGMA journal_mode=TRUNCATE
[386324:386503:0603/000144.680034:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: SELECT 1 FROM sqlite_master WHERE type=? AND name=?
[386324:386503:0603/000144.680110:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: SELECT 1 FROM sqlite_master WHERE type=? AND name=?
[386324:386503:0603/000144.680141:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: SELECT 1 FROM sqlite_master WHERE type=? AND name=?
[386324:386503:0603/000144.680159:ERROR:database.cc(1696)] Quota sqlite error 5, errno 0: database is locked, sql: CREATE TABLE meta(key LONGVARCHAR NOT NULL UNIQUE PRIMARY KEY, value LONGVARCHAR)
[386324:386503:0603/000144.680175:ERROR:quota_database.cc(582)] Could not open the quota database, resetting.
Add a shortcut for switching between edit and object mode (maybe Tab key?).
Please post your suggestions for shortcuts here.
Copy Paste Entities: some properties get lost or replace anormally by something else.
1- Create a Box, set it a color
2- Create a Light, set a color and an intensity (let say 30)
3- Create a Particle, set a texture (different than the default one), set 3 different colors, set different alpha values
4- Select the 3 entities and lock them.
5- Still selected, do "Copy"
6- Go in any domain for the test, open the create app and do "Paste".
The particle have lost its texture url, color and alpha are all the same, acceleration get set to -9.8. (certainly other stuff)
the Light has lost it's intesity (set to 1). I saw in some test the color being reset to white
The box could have lost its color (but does't seem always the case)
The Create app doesn't do any discrimination regarding properties during the copy and paste. Which mean that the problem is possibly happening at the API level.
Severity 1
Segmentation faults happen semi-randomly in Create app, especially when manipulating objects.
It'll make for better quality screenshots, which is good for publicity.
Alternatively, we could use higher quality JPG
Here are the hifiurl scheme currently supported:
hifi://ip:port/path_or_coordinates
hifi://ip:port
hifi://webDomain/path_or_coordinates
hifi://webDomain
hifi://@username
hifi://placename
hifi://placename/path_or_coordinates
To allow a navigation to a placename under another Metaverse Server,
a solution would be to add the support of these 2 new hifiurl scheme:
hifi://placename@metaverseServer
hifi://placename@metaverseServer/path_or_coordinates
When the Metaverse server address would be passed after a @ (and when there is a placename before that @)
then used this Metaverse server address to resolve the place name.
By adding this, we preserve intact all the legacy hifiurl scheme and simply add these new possibilities.
============
Additional request to this:
It would be useful to have another variable: "lastReachedMetaverseServerURL"
This variable would be upodated each time we reach a destination using a different Metaverse Server URL.
This variable would have as initial value the Metaverse Server URL where you are connected initially when you connect to the Metaverse.
This variable should be exposed like we do currently for "AccountServices.metaverseServerURL"
This new "lastReachedMetaverseServerURL" variable would be used to determine which Metaverse Server is the "Local" one by the "Places" application.
The code is well made for automated testing, and some should already exists, we're just not using them.
The change to PNG broke GIF screenshots
A following message appears in Interface logs:
[WARNING] [default] qrc:/qml/hifi/audio/MicBarApplication.qml:42: TypeError: Value is null and could not be converted to an object
well, everyone's setup is different and the environment being too dark seems to be an issue for some.
There is already an (undocumented) "exposure" setting available in the render API so it is already doable via scripting.
For anyone wanting it NOW ๐ it is part of my menu extender that I always run:
https://silverfish-freestuff.s3.amazonaws.com/Scripts/MenuExtender/MenuExtender3.js
It is in the "Xtra-Graphics->Tone Mapping" menu
I think it would be good to collect all the constants referencing environment variables into a single header file. This would also be a good opportunity to make sure they are all documented.
I found a bunch with grep -R --exclude-dir=build 'systemEnvironment().contains('
. There is also a function isInEnvironment
that does not appear to be used.
In the meeting today, some of us discussed the importance of (subtle) in-world sound effects and the challenges that currently discourage creators from controlling this dimension. I am not very familiar with the current creation workflow but I wanted to open this issue for discussion.
My view is that there are two logical kinds of sound effects-- constant and triggered. I think there should be a simple menu to attach sound files to entities, and that attached sound files should display check-boxes to enable constant playback of the file. A volume level adjustment would also be very useful here, with values normalised against the interface's default sound effect volume level. Triggered sound effects would need to be referenced from scripts, unless default scripts are supplied for common triggers (e.g. user avatar within X distance, user connects to domain, user performs primary action on entity).
There should probably be a similar way to attach sound effects to zones or even whole domains. These might be used, for example, in the case of sound effects for waves lapping a beach or wind rushing against the user's avatar.
I think it is important for Overte to supply a good sound pack of freely licensed sound effects that creators would be recommended to use for common purposes unless they specifically want something different. This would both simplify the creation experience and encourage a somewhat consistent user experience between domains.
Another long-term idea I think might be useful is adding an app, or a mode to the existing Create app, that would specialise in audio engineering. This would be useful for more technical fine-tuning of audio, perhaps visualising sound waves in-world and allowing for simple customisation of entities' acoustic properties. Simple filtering/editing of the source sound files might be convenient.
I don't know much about how sound effects are currently handled so please discuss. :)
animGraphUrl = http://oaktown.pl/anim/avatar-animation.json
works, while
animGraphUrl = "http://oaktown.pl/anim/avatar-animation.json"
fails silently.
The new voxel terrains seem to be designed in such a way that they can be edited both outside and inside the visible output object.
Unfortunately, the externally designed polygons do not seem to be saved in conclusion:
after "Reload Content" the terrain is clearly redrawn. The outer areas are largely missing:
This happens on startup. Stack trace:
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=2, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1 0x00007fffe6ec2ca3 in __pthread_kill_internal (signo=2, threadid=<optimized out>) at pthread_kill.c:78
#2 0x00007fffe6e729c6 in __GI_raise (sig=2) at ../sysdeps/posix/raise.c:26
#3 0x00007fffe7409431 in LogHandler::printMessage (this=0x7fffe74def60 <LogHandler::getInstance()::staticInstance>, type=type@entry=LogWarning, context=..., message=...)
at /home/dale/git/overte/libraries/shared/src/LogHandler.cpp:223
#4 0x000000000077d141 in messageHandler (type=QtWarningMsg, context=..., message=...) at /home/dale/git/overte/interface/src/Application.cpp:579
#5 0x00007ffff3f10fa8 in qt_message_print (msgType=QtWarningMsg, context=..., message=...) at global/qlogging.cpp:1843
#6 0x00007ffff3f1259c in qt_message_output (msgType=QtWarningMsg, context=..., message=...) at global/qlogging.cpp:1924
#7 0x00007ffff40118d0 in QDebug::~QDebug (this=0x7fffffff91d8, __in_chrg=<optimized out>) at io/qdebug.cpp:154
#8 0x00000000007ecc72 in DependencyManager::get<NodeList> () at /home/dale/git/overte/libraries/shared/src/DependencyManager.h:109
#9 0x00007fffe77567b2 in NodeList::NodeList (this=0x170d580, newOwnerType=<optimized out>, socketListenPort=<optimized out>, dtlsListenPort=<optimized out>)
at /home/dale/git/overte/libraries/networking/src/NodeList.cpp:102
#10 0x00000000007ec8bd in DependencyManager::set<NodeList, unsigned char const&, int const&> () at /home/dale/git/overte/libraries/shared/src/DependencyManager.h:143
#11 0x00000000007abcf1 in setupEssentials (argc=<optimized out>, argv=<optimized out>, parser=..., runningMarkerExisted=<optimized out>)
at /home/dale/git/overte/interface/src/Application.cpp:823
#12 0x00000000007c68bd in Application::Application (this=this@entry=0x7fffffffae80, argc=@0x7fffffffac3c: 2, argv=argv@entry=0x164c850, parser=..., startupTimer=...,
runningMarkerExisted=runningMarkerExisted@entry=false) at /home/dale/git/overte/interface/src/Application.cpp:989
#13 0x000000000064c6c3 in main (argc=<optimized out>, argv=0x7fffffffdc78) at /home/dale/git/overte/interface/src/main.cpp:561
The problem appears to be that NodeList.cpp:102
appears to try to retrieve itself in its own constructor. This appears to be completely superfluous, and it should be fine to remove the line unless I'm missing something.
I compiled Overte and that version does not have this issue. Clearing caches and reloading scripts did not solve the problem.
Apps that render: Audio, Avatar, People, Graphics.
Apps that do not render: Snap, Places, Emote, Appreciate, More..., Chat.
Overte version: Overte-x86_64-20220226.AppImage
Linux version: 5.15.26 (Gentoo)
Web entities open automatically, and could be used to open malicious content. There should be an option to allow users to block those by default and whitelist them. Untrusted scripts could also be a security concern.
Let me know what are your opinions on this.
To replicate, go to tutorial, clear cache, restart Overte and then clear cache a few more times.
_totalResourcesSize member of Resource cache becomes negative and triggers assert.
Backtrace:
ResourceCache object:
Resource object on which it happens:
This may point to a bug that causes memory corruption and crashes in other places.
My monitor runs at 120hz, so it definitively could run at a higher framerate.
OS: KDE neon User - 5.24 x86_64
Kernel: 5.13.0-28-generic
AMD GPU (6900xt) running on Mesa 21.0.3
The CMAKE files in the Overte project still use Vircadia as project names, variables etc. This should be changed to Overte
Here's some security issues that we might want to solve:
Settings
Settings can be read ans write from any client entityscript. It's not bad in it-self for many settings
But for some setting that need a bit more security, it would be preferable to have a new category of setting "PrivateSettings"
that would be manageable only from interface script.
This would prevent data collection by simply visiting a domain.
Recording.saveRecording
This seems to allowed to save a recording anywhere. It could override files with any kind of extension.
This seem to be a potential way to cause damages.
Recommendation would be to enforce the extension over the filename passed in paramater. Ideally we would constraint this to be within a specific directory (MyDocument or something like that) to prevent incidents.
We could, in paralell, to this add a new method Recording.saveRecordingToSelectedFile that would have a save dialog that the user will have to manage.
Clipboard.exportEntities
Same issues as Recording.saveRecording
similar solution.
We could used the new methode to fix some app: "Create", "Material Data Creator", and possible other.
The earlier would be the best.
Since can play with skybox.color, it would make sense to be able to have the counterpart in ambient light, to be able to stay consistent visually.
Providing the ability to customise the push-to-talk button for voice so that it's not hard-coded to 'T'
Something like the cinema, but that could be trivially dropped into the world at any location, and easy set up and configured.
Ideally with Youtube support
Parts of the system can be benchmarked. We should be regularly running benchmarks.
One thing I'd like to benchmark is the resource system, to see how good it is.
Currently, the default way of changing your world collision setting requires you to navigate to the Avatar setting menu, which is a sub-menu to the Avatar menu, a bit deeply Buried and difficult to explain to a new user stuck in a wall.
I have had it mapped to "v" for the best part of 2 years now, not sure why I chose "v" but I've had no issues with other apps using "v" so I suggest making "v" the default world collision toggle key.
This is an issue thread for any rebranding-related issues you encounter.
We still have to change names of executables, welcome text in tutorial world, links to API docs, and portal to the hub.
Post any problems you encounter here :)
References to resources that sit outside of git or a vendor server, and references to repos that sit inside Vircadia's git organisation still exist and need to be reviewed and a determination made if the references are needed/if we should fork into our own organisation.
Note: This list may not contain all
In overte/hifi-qt.py
http://motofckr9k.ddns.net/vircadia_packages/qt5-install-5.15.2-ubuntu-18.04-aarch64_test.tar.xz
[Line 164]https://data.moto9000.moe/vircadia_packages/qt5-install-5.15.2-debian-10-aarch64.tar.xz
[Line 174]In overte/hifi-android.py
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/dependencies/android/
[Line 13]
In overte/android/build.gradle
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/dependencies/android/
[Line 51]
In overte/android/setupGVR.gradle
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/austin/android/
In overte/tools/ci-scripts/upload_to_publish_server.py
build-uploader.vircadia.com
[Line 44]
In overte/tools/nitpick/AppDataHighFidelity/Interface.json
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/sounds/Collisions-otherorganic/Body_Hits_Impact.wav
[Line 41]In overte/tools/qt-builder/qt-lite-build-steps.md
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/dante/ssl-static-windows.zip
[Line 33]
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/dante/openssl-static-osx.zip
[Line 74]
In overte/scripts/defaultScript.js
https://cdn.vircadia.com/community-apps/more/app-more.js
[Line 49]
https://content.fluffy.ws/scripts/chat/FloofChat.js
[Line 50]In overte/scripts/system/html/users.html
https://cdn-1.vircadia.com/eu-c-1/vircadia-public/faye/tablet-dev/refresh-icon.svg
[Line 255] (unused and outdated)In overte/scripts/system/more/app-more.js
https://cdn.vircadia.com/community-apps/applications
[Line 59]
In overte/scripts/system/more/more.html
https://cdn.vircadia.com/community-apps/applications/metadata.js
[Line 57]
https://cdn.vircadia.com/community-apps/applications/
[Line 67]
https://cdn.vircadia.com/community-apps/web/index.html
[Line 171]
In overte/scripts/system/places/places.js
https://metaverse.vircadia.com/interim/d-goto/app/goto.json
[Line 386]
In overte/scripts/system/quickGoto.js
lq-hub.vircadia.com
[Line 34]
References to repos in Vircadia org:
vircadia/draco
(In cmake/ports/draco/portfile.cmake
)
vircadia/etc2comp
(In cmake/ports/etc2comp/portfile.cmake
)
vircadia/scribe
(In cmake/ports/hifi-scribe/portfile.cmake
)
vircadia/nvidia-texture-tools
(In cmake/ports/nvtt/portfile.cmake
)
2 script are failing.
The doppleganger is failing to get the js file using the resource addressing.
This one is probably simple to fix by merging the called script to the caller script.
But the html for the wizard seems unreachable using this kind of addressing.
it will need to be exposed in the resource
It's possible to upgrade Chromium independently of the rest of Qt. This should be implemented in overte-builder.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.