Terrible Scripting Workflow. Worst Ever! Frustrating! Unusable!


#21

You mentioned a pink background,can u get a screen shot of that? I have seen it but on my old laptop with the wrong open GL .when you say u posted a picture at the start of the thread I can only see the one with the dagger


#22

It doesn’t happen all the time like it used to, and I am absolutely sure it is linux opengl drivers. Now it just does it as it is loading. I wouldn’t be surprised if most of my problems are because I am running Linux.


#23

Ok, so I think I’m hearing that the issues are more related to the rendering of the windows/text, and some additional mention of the keyboard/mouse interaction behavior. And you’re reporting these for unix. Do you see similar problems on Windows?

Btw. The pop up Log window, is on the Developer menu as “Log”. Did you find that?


#24

Yes, but it would be useful if it only showed specific logs instead of having to dig through all the spam. I usually use my terminal to view this since I run interface via command line anyway

Yes many of these problems exist in windows as well. The overlays are too big for my screen and feel laggy and unresponsive. The problems are probably more on the scripting end because I have created my own overlay windows that don’t feel this way (although my code was broken by changes in the scripting system and I still need to fix them).

The difference between scripted scripting helpers vs the (now removed) hardcoded scripting helpers is like night and day. Of course c++ is always going to be faster and more responsive than scripts.

I would like to see a plugin system that we could use to dynamically load c++ plugins from a remote domain server, rather than having to rely on scripting 100% of the time. This would go really far to increase performance and flexibility of HiFi as a whole.


#25

Note that there are two “log” windows under the Developer menu:

  • Log
  • Script Log (HMD Friendly)…

The second one, above, displays only script-related program log items.


#26

I am not sure what you’re referring to… “scripting helpers”? Can you clarify, generally we’re not removing C++ and replacing it with Scripts, if anything we’re moving more the opposite direction.


#27

That’s an interesting idea, but obviously has lots of nuances and complexity to consider. We’d really need to think about the security model for that. I think it’s an interesting idea, I will mention it to our product team, but this would definitely be a “way out” roadmap item if we added it. That being said, we’ve talked about doing this for hardware plugins, and as more and more devices become available that will make more sense.

Maybe you could give some examples of the types of C++ code services you’d like to add via plugin.


#28

What I mean are windows that assist you with scripting and debugging. The scripted ones vs. the hardcoded c++ windows.

I can think of many CPU intensive services that could benefit from this.

  • Encryption/Decryption

  • Any tool customized for your specific domain (privacy controls, land editing / parcelling, UI for games)

  • Media streaming tools (such as custom software for streaming music and video from your pc to the domain, such as a DJ in a club would use)

  • Saving/Reading files - right now the only way to save information locally through interface is in the settings file accessible through scripting. It would be great to be able to save files particular to a domain, especially if said files could be encrypted. (examples: media files, images, user preference settings). With a c++ plugin you could actually load and save files for editing (such as media files, documents, 3d meshes for live multi-user editing in VR)

  • Plugins that make use of existing Qt functions

You’re right about the security risks but if handled delicately this would vastly improve the quantity and quality of things that can be done as well as protect intellectual property when it comes to source code (javascript isn’t exactly secure when it comes to this). Imagine developing a software package HiFi users can use from within HiFi and selling it on the marketplace! Better yet imagine a plugin that allows you to use existing software within HiFi, such as a Maya plugin that allows multiple users to edit the same 3D mesh in VR space (maybe even using their virtual hands to sculpt)!

Scripting is great, but it has its place. There are many things that it really shouldn’t (or can’t) be used for, that people will try to use it for anyway (thus degrading user experience with memory-hogging scripts and hacky workarounds).


#29

u spying on me bro?!

:wink:


#30

Don’t worry I am just doing it for the sexy pr0n.


#31

Not to derail your convo, but what’s up with the Camera auto-magically turning on in Avatar Island?


#32

This is a specific issue with Qt / QML on some platforms. The QML backend was written against an earlier version of OpenGL. When we create our OpenGL contexts, we create core contexts, basically ‘modern OpenGL’. Some GPU drivers handle the mismatch reasonably well, while some do not. This is the cause of the pink backgrounds that we’ve seen. I know for a lot of content it used to happen on AMD GPU’s and we added some logic to try to suppress it, but it’s possible that it happens on some other platform / driver combinations.

It looks like it may be fixed in Qt 5.10


#33

I believe this should be fixed in RC61 next week:

https://github.com/highfidelity/hifi/pull/11975


#34

Yeah I haven’t noticed the problem since Qt was updated. I think it only happens briefly sometimes when loading. I am using mesa drivers in ubuntu.