Mysterious invisibility of Text module output
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Mysterious invisibility of Text module output
I've recently been plagued by non-visibility of the contents of my Text modules, not resolved by re-installing or updating graphics drivers.
I was first aware of (and reported) this when testing the new Iterator module.
I've tried exporting non-working scenes as projects, then running those projects stand-alone. Previously I've had inconsistent results when doing this, but attached is a project where the problem is consistently evident on two different systems. Initially I only experienced problems in projects that contained the Iterator module but the problem also shows if I use the attached project (saved by the new beta 2.22b3 ) in an earlier version such as Magic 2.21.
Building an additional scene using the Text module in the same project shows the same problem. Furthermore, having once loaded this project the problem persists if I subsequently do File > New Project and simply try to use the Text module in the new project. It's as if the Magic environment is corrupted by something that's not visible within the scene but somehow saved with it and persists even if a new project is opened afterwards.
There's no problem if I build the same scene from scratch in a clean-start instance of Magic. Interestingly, if I subsequently import the problem project it too works.
(Win 10, Magic 32-bit, NVIDIA GTX 1070)
I was first aware of (and reported) this when testing the new Iterator module.
I've tried exporting non-working scenes as projects, then running those projects stand-alone. Previously I've had inconsistent results when doing this, but attached is a project where the problem is consistently evident on two different systems. Initially I only experienced problems in projects that contained the Iterator module but the problem also shows if I use the attached project (saved by the new beta 2.22b3 ) in an earlier version such as Magic 2.21.
Building an additional scene using the Text module in the same project shows the same problem. Furthermore, having once loaded this project the problem persists if I subsequently do File > New Project and simply try to use the Text module in the new project. It's as if the Magic environment is corrupted by something that's not visible within the scene but somehow saved with it and persists even if a new project is opened afterwards.
There's no problem if I build the same scene from scratch in a clean-start instance of Magic. Interestingly, if I subsequently import the problem project it too works.
(Win 10, Magic 32-bit, NVIDIA GTX 1070)
- Attachments
-
- Test Text bug.magic
- Text module content is not visible when I run this project on either of my two main desktop systems.
- (1.24 KiB) Downloaded 311 times
Re: Mysterious invisibility of Text module output
Can't reproduce that here. Does 64-bit have the same issue?
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Ah, 64-bit works fine.
From the 64-bit version I tried saving the project under a different name and then re-opened that in 32-bit Magic. Same problem, no visible text.
I also tried deleting Magic's XML file, the problem persisted.
From the 64-bit version I tried saving the project under a different name and then re-opened that in 32-bit Magic. Same problem, no visible text.
I also tried deleting Magic's XML file, the problem persisted.
Re: Mysterious invisibility of Text module output
I'm not sure, but I will investigate.
It could be an issue with the 32-bit graphics driver. The world is moving farther and farther from 32-bit and it's just not as well supported anymore.
It could be an issue with the 32-bit graphics driver. The world is moving farther and farther from 32-bit and it's just not as well supported anymore.
Re: Mysterious invisibility of Text module output
Looks like it's a 32-bit Spout issue... still investigating.
Edit... if you open the project that doesn't work, disable Spout, save the project, restart Magic, and reload the project, it works.
Edit... if you open the project that doesn't work, disable Spout, save the project, restart Magic, and reload the project, it works.
Re: Mysterious invisibility of Text module output
SpoutIt's as if the Magic environment is corrupted by something that's not visible within the scene but somehow saved with it and persists even if a new project is opened afterwards.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Thanks Eric!Eric wrote:I'm not sure, but I will investigate.
wrt "32-bit graphics driver", do you mean the behaviour of the 64-bit NVIDIA driver via Window's WoW64 32-bit compatibility layer? I had understood that only 64-bit drivers were usable under 64-bit Windows.Eric wrote:It could be an issue with the 32-bit graphics driver. The world is moving farther and farther from 32-bit and it's just not as well supported anymore.
I'd love to move to 64-bit Magic, but I haven't found adequate alternatives to a couple of Resolume 32-bit FFGL modules that I have used extensively:
- AVFFGLDropShadow seems to give a perfect constant-thickness curve around edges that I haven't been able to emulate. My attempts, based on various blurs, have noticably varying thickness depending on the gradient of the edge they're operating on. This is especially problematic for circular waveforms.
- FFGLEdgeDetection has a lovely quality on live video.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Terry wrote:It's as if the Magic environment is corrupted by something that's not visible within the scene but somehow saved with it and persists even if a new project is opened afterwards.
Yes! That does seem to be it!Eric wrote:Spout
A) Problem occurs as a Spout-enabled project is loaded in 32-bit Magic.
A1) Start Magic 32-bit (2.21 release or 2.22b3 beta).
A2) Confirm Spout Output is off by default.
A3) Add one Text module with text.
A4) Enable Spout Output, Use Spout V2.
(Text module still works)
A5) Save Project
A6) Reload using File > Recent Projects
(Text module doesn't work.)
B) Problem occurs if Spout is enabled when a Text module is loaded in 32-bit Magic
B1) Start Magic 32-bit (2.21 release or 2.22b3 beta).
B2) Enable Spout Output
B3) Add one Text module with text.
(Text module doesn't work.)
B4) Disable Spout Output.
B5) Save project
B6) Reload using File > Recent Projects
(Text module still doesn't work.)
B7) Exit Magic. Re-start and load the project.
(Text module works)
C) No problem with Magic 64-bit 2.21 release or 2.22b3 beta.
OK if Spout on when Text module loaded, or when loading a project saved with Spout on.
It's a great pity if I can't use the text module with Spout32, and I'm wondering what else may not work.
BTW, it didn't seem to matter whether or not Spout2 or Alpha enabled
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
... As an interim partial workround, could we have a "Lock Spout Output" option, equivalent to the "Lock Graphics Resolution"?
This would enable text on 32-bit projects which had been saved with Spout on, without having to load and re-save them with Spout off. I find the original creation date useful, and re-saving would lose this.
Have you been able to reproduce my problem? I've tried a third desktop system, behaves just the same.
This would enable text on 32-bit projects which had been saved with Spout on, without having to load and re-save them with Spout off. I find the original creation date useful, and re-saving would lose this.
Have you been able to reproduce my problem? I've tried a third desktop system, behaves just the same.
Re: Mysterious invisibility of Text module output
Yes, I was able to reproduce it on a different machine.
I wouldn't want to add an option as a workaround for a bug; it's better if the bug can be fixed. We'll see.
I wouldn't want to add an option as a workaround for a bug; it's better if the bug can be fixed. We'll see.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Eric wrote:Yes, I was able to reproduce it on a different machine.
What a relief!
My preference too! It's been such a hassle, and such a puzzle until today.Eric wrote:I wouldn't want to add an option as a workaround for a bug; it's better if the bug can be fixed...
Re: Mysterious invisibility of Text module output
So, here is some further information.
One of my laptops has a dual-boot with Windows 7 and Windows 10. Its graphics card is an Nvidia 970GTX. Running the same Magic version on both OS's, Windows 7 exhibits the problem described above, but Windows 10 does not.
I have another laptop with Windows 10 (only) and Intel graphics. This also does not exhibit the problem.
So we can conclude that the problem is something about Windows 7, or Windows 7 in conjunction with the Nvidia.
Investigation continues.
Edit: oops, never mind. I see that it doesn't work on your Win10 system. So, I'm actually more mystified now.
One of my laptops has a dual-boot with Windows 7 and Windows 10. Its graphics card is an Nvidia 970GTX. Running the same Magic version on both OS's, Windows 7 exhibits the problem described above, but Windows 10 does not.
I have another laptop with Windows 10 (only) and Intel graphics. This also does not exhibit the problem.
So we can conclude that the problem is something about Windows 7, or Windows 7 in conjunction with the Nvidia.
Investigation continues.
Edit: oops, never mind. I see that it doesn't work on your Win10 system. So, I'm actually more mystified now.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Thanks for the update Eric, but as I flagged at the bottom of my first post I have the problem under Windows 10 so there's more to it than just a Win 7 issue (although I have the problem under Win 7 too)
My main studio system is Win 10 Pro 64-bit Version 1809. Graphics card NVIDIA GTX 1070 8GB
My other studio system is Win 7 Pro 64-bit SP1. Graphics card NVIDIA GTX 580 4GB
Both show the problem.
My main studio system is Win 10 Pro 64-bit Version 1809. Graphics card NVIDIA GTX 1070 8GB
My other studio system is Win 7 Pro 64-bit SP1. Graphics card NVIDIA GTX 580 4GB
Both show the problem.
Re: Mysterious invisibility of Text module output
Yes, see my note above where I noticed the Win10 problem.
This won't get fixed for 2.22 because it's stable and in feature lock, but I'll figure something out for 2.23.
This won't get fixed for 2.22 because it's stable and in feature lock, but I'll figure something out for 2.23.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Many thanks Eric
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Aha!
Attached is a project where not only Text, but also Trails and Optical Flow Distort stop working if Spout Output is enabled in 32-bit Magic.
Furthermore, when started with "Open Project" in a clean-start instance of Magic, this project enables Magic's Spout Output thus guaranteeing that it won't work. Alternatively, importing it into a clean-start Magic instance will work fine until Spout Output is enabled when all stop working (except Text, on occasion). I'm pretty sure the following is not fully worked out, but FWIW...
I see there's an argument for saving a project's Spout Output enabled state so that Spout Output is re-enabled if it was set when the project was saved, especially if it was part of a self-starting/headless installation. Personally I can't see an argument for disabling Spout Output if a "disabled" project is loaded. I would prefer to decide on a show-by-show basis whether I wished to use Spout to feed other apps, and not have my Spout output killed if I loaded a project that was not saved with Spout enabled. Likewise, there may sometimes be a disadvantage to Spout being automatically enabled whilst a project is loading, as the output may not be desired immediately.
I note that the parent project's Spout Output state is also saved when a (sub) project is created by "Save scene to project". In my experience these Spout state-saving behaviours were unexpected and could helpfully be documented if it is by design, especially as opening that sub project on its own results in Spout being enabled, whereas importing it does not.
My personal preference would be for Spout Output only to be enabled if
0) ... a project is opened that had Spout enabled when the entire project was saved and Spout is not "Locked Off" by my suggested new option.
1) ... Spout Output is enabled explictly using Magic Window Options
2) ... a SpoutSpender module is active in one of the scenes.
3) ... Spout is "Locked On" by my suggested new option.
and, if enabled, not to be disabled by loading a project that had been saved without Spout Output Enabled.
With regard to the issues caused by Spout32, I think these are one (but maybe not the only) cause of many of the weird-but-hard-to-repeat issues I've been having for quite a time. It doesn't take much to confuse me, but these certainly did. Frequently I'd work far too late at night on a Magic project, get stumped by some odd behaviour but be too tired to investigate immediately or to remember exactly what had happened in order to document it adequately for future investigation. In the morning I either couldn't repeat the incident or couldn't resolve it and made a clean start rather than re-use an exported scene or group of scenes. I was left with the suspicion that (likely) my brain or (possibly) Magic had glitched.
- Many times: Modules that had been working would stop. Certainly Trails, and perhaps other modules that also used buffers. A clean start of Magic would sometimes but not always re-enable the function.
- Once: The text re-appeared when I changed its size
- Twice: On returning to the PC after a long break, I noticed the text had gone when I very faintly recalled it being there when I left.
Attached is a project where not only Text, but also Trails and Optical Flow Distort stop working if Spout Output is enabled in 32-bit Magic.
Furthermore, when started with "Open Project" in a clean-start instance of Magic, this project enables Magic's Spout Output thus guaranteeing that it won't work. Alternatively, importing it into a clean-start Magic instance will work fine until Spout Output is enabled when all stop working (except Text, on occasion). I'm pretty sure the following is not fully worked out, but FWIW...
I see there's an argument for saving a project's Spout Output enabled state so that Spout Output is re-enabled if it was set when the project was saved, especially if it was part of a self-starting/headless installation. Personally I can't see an argument for disabling Spout Output if a "disabled" project is loaded. I would prefer to decide on a show-by-show basis whether I wished to use Spout to feed other apps, and not have my Spout output killed if I loaded a project that was not saved with Spout enabled. Likewise, there may sometimes be a disadvantage to Spout being automatically enabled whilst a project is loading, as the output may not be desired immediately.
I note that the parent project's Spout Output state is also saved when a (sub) project is created by "Save scene to project". In my experience these Spout state-saving behaviours were unexpected and could helpfully be documented if it is by design, especially as opening that sub project on its own results in Spout being enabled, whereas importing it does not.
My personal preference would be for Spout Output only to be enabled if
0) ... a project is opened that had Spout enabled when the entire project was saved and Spout is not "Locked Off" by my suggested new option.
1) ... Spout Output is enabled explictly using Magic Window Options
2) ... a SpoutSpender module is active in one of the scenes.
3) ... Spout is "Locked On" by my suggested new option.
and, if enabled, not to be disabled by loading a project that had been saved without Spout Output Enabled.
With regard to the issues caused by Spout32, I think these are one (but maybe not the only) cause of many of the weird-but-hard-to-repeat issues I've been having for quite a time. It doesn't take much to confuse me, but these certainly did. Frequently I'd work far too late at night on a Magic project, get stumped by some odd behaviour but be too tired to investigate immediately or to remember exactly what had happened in order to document it adequately for future investigation. In the morning I either couldn't repeat the incident or couldn't resolve it and made a clean start rather than re-use an exported scene or group of scenes. I was left with the suspicion that (likely) my brain or (possibly) Magic had glitched.
- Many times: Modules that had been working would stop. Certainly Trails, and perhaps other modules that also used buffers. A clean start of Magic would sometimes but not always re-enable the function.
- Once: The text re-appeared when I changed its size
- Twice: On returning to the PC after a long break, I noticed the text had gone when I very faintly recalled it being there when I left.
Re: Mysterious invisibility of Text module output
Thanks Terry, that's helpful.
Regarding loading/saving Spout settings, yes there's probably some improvements to be made, but we'll have to get to them later.
As far as the critical issue here, I think I've traced it back to Magic v2.2, which is the last time I updated Spout. On my system, the problem doesn't happen in Magic v2.13, which used an earlier release of Spout. Can you confirm?
Regarding loading/saving Spout settings, yes there's probably some improvements to be made, but we'll have to get to them later.
As far as the critical issue here, I think I've traced it back to Magic v2.2, which is the last time I updated Spout. On my system, the problem doesn't happen in Magic v2.13, which used an earlier release of Spout. Can you confirm?
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Thanks Eric.
I'm away from base for a few hours. I try to keep earlier versions of Magic, but can't currently confirm that I have 2.13.
EDIT: Confirmed, I have 2.13
I'm away from base for a few hours. I try to keep earlier versions of Magic, but can't currently confirm that I have 2.13.
EDIT: Confirmed, I have 2.13
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Confirmed.
Spout with Magic 2.13 works fine.
Spout with Magic 2.13 works fine.
Re: Mysterious invisibility of Text module output
Terry, I think I figured it out. For some reason, when DirectX 9 is selected in the global Spout settings (via SpoutSettings.exe), the problem occurs. But when DirectX 9 is not selected, Spout defaults to DirectX 11, which appears to work properly.
Can you give it a try? You might need to download and install the main Spout package if you haven't already.
Can you give it a try? You might need to download and install the main Spout package if you haven't already.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
Yes indeed, de-selecting DirectX 9 fixes the problem. Many thanks Eric.
I did have Spout installed, but was unaware of the setting options.
I did have Spout installed, but was unaware of the setting options.
Re: Mysterious invisibility of Text module output
Ok that's probably good enough for now. The problem is otherwise proving very difficult to track down.
I'd urge you (and others) to work on finding alternative solutions for 32-bit plugins. It is seeming more and more likely that Magic v3.0 will be 64-bit only.- AVFFGLDropShadow seems to give a perfect constant-thickness curve around edges that I haven't been able to emulate.
- FFGLEdgeDetection has a lovely quality on live video.
-
- Posts: 712
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Mysterious invisibility of Text module output
More than good enough for me. Those bugs have been bugging me for ages. I'm delighted that a simple Spout setting will avoid them. Thanks again Eric!Eric wrote:Ok that's probably good enough for now...
Fair enough. The prospect of a Magic so awesome that it needs 64-bits is quite sufficient incentive.Eric wrote:... I'd urge you (and others) to work on finding alternative solutions for 32-bit plugins. It is seeming more and more likely that Magic v3.0 will be 64-bit only.