10.3 preview r3968, r3974 - Platform Update

Archived development update discussion from past versions
Archived development updates.
Nicholas
Posts: 12440

Post by Nicholas » 03-18-16 9:48 pm

SYNTHESIA 10.3.3968
Download from the pink box above.

CHANGES SINCE r3742
  • Synthesia for PC now requires Windows Vista or later.
  • Synthesia for Mac now requires Mac OS X Lion (10.7) or later.
  • Synthesia now requires OpenGL 3.0 2.1 capable hardware on PC and Mac.

    New Features
  • Added Polish user-interface language support. (Thanks Janusz!)
  • Added Mac Retina support. HiDPI/Retina graphics are now available on all Synthesia platforms!
  • The Graphics.ScaleOverride advanced setting now works on Macs in the non-Retina to Retina direction.
  • You can now also use the arrow keys to choose between the big Left/Right/Both buttons on the song setup screen.
  • Jamboxx slider auto-calibration.

    Fixes
  • System/display sleep is now only prevented while a song is playing or during free play.
  • The built-in song set now appears in categorized groups inside the "All Songs (grouped by folder)" list, instead of all being presented as a flat list.
  • Prevented falling note flicker when navigating near the beginning of the song in the timeline.
  • The built-in MIDI synth in Windows 10 should now work immediately and continue working even after toggling it off then on. (This is better fix for the Windows 10 synth bug than was included in Synthesia 10.2.)
  • The hand assignment screen now always picks the correct keyboard bounds, taking into account all discarded notes.
  • Music store metadata will now periodically update again (broken since 10.2).
  • Notes played before a song begins will now always use an instrument from a user played part.
  • Removed the default "Song Position Jog" shortcut set to keyboard pitch bend wheels. There are too many flaky pitch bend wheels out there for this to be a default. If you liked it before, just rebind it from SettingsShortcutsSong Position Jog.
  • Removed DirectX support from the Windows version of Synthesia.
  • Removed the now-obsolete Midi.AutoVolume advanced setting (from many years ago).
  • Removed the distinction between online and simple users: no more signing in, passwords, etc. All scores are local once again. This had already been disabled on the server for over a year, so it was time to make the client reflect reality a little better. The online scoreboard may return again some day!
  • Removed anonymous performance statistics submission.
Lots and lots of things have changed under the hood: more than 200 commits between r3742 and r3968! Outside of a few nice bug fixes, there isn't a strong incentive for you guys to give this build a try... but we like to get it out in the wild because this build contains the biggest infrastructure changes of the 11 (well, 10.3) release cycle, and it's nice to get as early warning as possible when things are broken. (I suppose it's a good sign that a lot of this code has already been living out in the wild successfully inside the video creator.)

Again, the loss of XP and OS 10.6 (and DirectX) compatibility is a big price to pay, but the agility this enables makes a lot of sense from our perspective. One example: our low-level rendering infrastructure is down from 5 code paths (win-dx, win-opengl1, mac-opengl1, ios-opengl3, android-opengl3) to just one now: opengl3. Those kinds of changes are wonderful for the kind of speed we can hope to add features.

Visitor stats are showing that combined, this will only impact about 2% of Synthesia users. And it's still a while before Synthesia 10.3 will be finished, giving even more time for that number to drop.

In any event, the next preview will contain more than a dozen medium-sized quality of life changes before the deep dive into sheet music.

kiwi
Synthesia Donor
Posts: 1178

Post by kiwi » 03-19-16 3:09 am

No problems here so far.

Why the scoreboard is removed? not enought interest from users?

MikeGolf
Posts: 8

Post by MikeGolf » 03-19-16 6:32 am

Gave it a shot and it's not functional on the windows Surface yet. It appears to load but the entire screen is offset and unable to be touched without overcompensating. The user needs to click over an inch above the button in order to actually click the button. I'm not sure how many other Windows Tablet users are facing a similar problem.

Nicholas
Posts: 12440

Post by Nicholas » 03-19-16 7:09 am

kiwi wrote:Why the scoreboard is removed? not enought interest from users?
Just about a year ago it broke the server from the load. :?
MikeGolf wrote:... but the entire screen is offset and unable to be touched without overcompensating.
If you adjust the window size (say, drop it out of maximized, resize the frame, or press Alt-Enter) does that fix it? I think I've spotted this once before, too. If it starts up as "windowed but maximized", the title bar area isn't taken into account so you have to shift all of your input by the size of the title bar.

MikeGolf
Posts: 8

Post by MikeGolf » 03-19-16 10:05 pm

That's exactly what it was. I pulled it back in with Alt+enter and then I was able to touch the screen in the correct areas to navigate

Nicholas
Posts: 12440

Post by Nicholas » 03-20-16 12:34 am

Cool. I'll try to track it down and get it fixed in the next preview. Sorry for the inconvenience.

(If you knew how much changed behind the scenes, that this is the only problem people are running into so far is actually kind of amazing. :lol: )

rumpole
Posts: 22

Post by rumpole » 03-20-16 3:12 am

Sorry, Nicholas,

My win7 ultimate will not accept 3968.

Regards,

Frank

MikeGolf
Posts: 8

Post by MikeGolf » 03-20-16 11:05 am

Well, I'm still waiting a bit for the full changeover from 10.2. 10.3 causes a high memory and CPU usage that results in the fan coming on within 10 minutes of usage. Again, this is on a surface where I can run multiple programs and never once hear the fan.

Nicholas
Posts: 12440

Post by Nicholas » 03-20-16 11:20 pm

rumpole wrote:My win7 ultimate will not accept 3968.
I saw a half-dozen crash reports come in from someone having trouble with r3968. As it turns out, the message that is supposed to pop up telling you "OpenGL 3.0 compatible hardware is required; make sure your video drivers are up to date" had a bug in it, and would actually cause a crash instead of being able to show the message. :lol:

Do you happen to know which graphics hardware your computer has? (Click "Start", right-click "Computer", choose "Properties", pick "Device Manager" from the sidebar list, check under the "Display adapters" category.)
MikeGolf wrote:10.3 causes a high memory and CPU usage...
Hmm, when I run this 10.3 build, I'm only seeing 55 MB of memory usage during a song ("Russian Folksong" from the keyboard classics section). It drops to 43 MB if I turn all the key/note labels off. Compare those numbers to 10.2, which uses 170 MB in the same conditions! What was "high memory" when you noticed it? Overall it looks like 10.3 has dropped memory usage substantially.

I do see what you mean about CPU spikes when 10.3 is in the foreground. My CPU sits at around 3% when the song is playing in the background, but spikes to 100% whenever it's in the foreground. I wonder if we need to tweak an OpenGL v-sync setting or maybe add a tiny per-frame sleep.

EDIT: This may be Nvidia-specific. Do you happen to know if you've got Nvidia graphics hardware? Apparently v-sync (which normally causes CPU usage to go down) pegs the CPU at 100%. Very strange.

WalkerBoh
Posts: 19

Post by WalkerBoh » 03-21-16 2:14 pm

I beg to differ: my windows 7 machine has a AMD Radeon HD 7900 series display adapter and still shows the high cpu usage described above :-(

MikeGolf
Posts: 8

Post by MikeGolf » 03-21-16 7:45 pm

Nicholas wrote:EDIT: This may be Nvidia-specific. Do you happen to know if you've got Nvidia graphics hardware? Apparently v-sync (which normally causes CPU usage to go down) pegs the CPU at 100%. Very strange.
The surface runs an Intel 520 Graphics card. It's a common card in quite a few of the newer tablets.

rumpole
Posts: 22

Post by rumpole » 03-22-16 6:35 am

Nicholas,

Re being unable to load r3968, the information listed under "Display Adaptor" is: MobileIntel (R) 4 Series Chipset Family, Driver Version 8.15.10.1892 dated the 2nd Sept. 2009.

What is involved in obtaining an up to date driver, or must the entire laptop be replaced?

Many thanks,

Frank

Nicholas
Posts: 12440

Post by Nicholas » 03-22-16 3:01 pm

WalkerBoh wrote:... has a AMD Radeon HD 7900 series
MikeGolf wrote:The surface runs an Intel 520 Graphics card...
So it sounds like this affects everyone across the board. :? I'm going to release an updated preview soon to try and drop that back down where it belongs.
rumpole wrote:What is involved in obtaining an up to date driver...
Intel provides an update tool that will check for any hardware that has driver updates automatically.

Also: I'm looking into whether we can get by with OpenGL 2.1 (instead of 3.0) as quite a few more people than I expected have run into compatibility issues. The XP/OS 10.6 requirement was the one I knew would impact about 1% of people. The graphics update should have been closer to 0% but it's starting to sound closer to 10%. That's unacceptable. So I'm going to see if we can get by with slightly older stuff. This will make it in the next preview.

(The Synthesia Video Creator still has a good reason to require 3.0 -- it actually needs one of the new features added in 3.0 to do the off-screen rendering -- so I'm okay with that. That's a power-user tool.)

Nicholas
Posts: 12440

Post by Nicholas » 03-23-16 1:23 am

SYNTHESIA 10.3.3974
Download from the pink box above.

CHANGES SINCE r3968
  • Synthesia now only requires OpenGL 2.1 capable hardware on PC and Mac (down from 3.0).
  • Fixed a crash when trying to display error messages related to graphics initialization.
  • Windows CPU usage should be much more reasonable (around ~8%, down from 100%). This should limit battery usage and fan noise a bit.
  • Key lights work in rhythm and recital modes again.
The CPU usage can be fine-tuned on Windows with the new advanced "Graphics.FrameMinMilliseconds" setting. Setting it higher will limit CPU usage even more. Setting it to 0 will guarantee max performance. The default of 5 (for a max of 200 fps) should be safe for everyone. You could be even more conservative and set it to 12 or even 16 (for a max of 62 fps) before the frame rate dropped too dramatically. That should drop the CPU usage in half again but it will vary a little based on the computer.

The OpenGL fix was pretty straightforward. The video creator will still require OpenGL 3.0 (as some off-screen rendering features were added in 3.0) but for now the main app can live on 2.1 for a while longer. This means nearly 100% compatibility for Synthesia's user base, as originally intended.

The key lights fix was meant for the big "quality of life" preview, but it got to sneak in a little early because a not-broken platform update was more important. :lol:

MikeGolf
Posts: 8

Post by MikeGolf » 03-24-16 8:50 pm

That definitely reduced the CPU/Fan issue. Now on to play with the rest. Thanks for the updates. I can't wait to grab a few xml files and throw them at it.

Korados
Posts: 62

Post by Korados » 03-25-16 6:07 pm

Hey Nicholas, it's great that you published the new dev build of Synthesia! But unfortunately, I have a problem. The screen is flickering when I start or close Synthesia and while it plays a song, the screen
stutters and the framerate drops sometimes when there are many notes on the screen, just like it did when the Jamboxx option was enabled. But I disabled it, so I guess it's because of OpenGL. Why did you take D3D out? Is there any way to get it back?

Nicholas
Posts: 12440

Post by Nicholas » 03-26-16 10:59 am

Try adjusting the Graphics.FrameMinMilliseconds option down to 0. Does that stop the flickering? Do you happen to know which graphics hardware your computer has?

Korados
Posts: 62

Post by Korados » 03-26-16 4:21 pm

Thank you for the tip but, unfortunately, this didn't work. It's still stuttering. I have a NVidia Geforce GTX 765M.

Chompy
Posts: 163

Post by Chompy » 03-28-16 10:51 am

Is this coming for Android/Ipad?? I noticed a significant boost in instrument quality, but still is a bit on the off side (static etc), but I'd love this coming for Android!! :D :) ;)

Too bad it is no longer supported on Snow Leopard machines anymore... :( Oh well, I can always grab your older versions of Synthesia that are compatible (eg 0.6), that one works on my Snow Leopard machine and lags a lot less than this one. :)

I do hope you add more note colours, eg all the spectrum of colours and inverted effects like colours, and maybe some custom texture support using imagery from the internet. :) And maybe add some gameplay effects, and GLSL post processing - that can be displayed on Android! :idea:
Another idea, is bringing out the detail simply by faking it via normal-maps, and specular maps, that you could choose from your Android/Ipad! :)

A normal-map brings out detail without even using up so much memory. Many games use this.
Example, use a normal map on a plain piano keyboard, and boom! You can fake the effect of real piano keys! :D
A normal-map has this: RG for X and Y normals and B as the background for Z normals.
A specular map is a grayscale image that is designed to control areas of specularity. You could use this on the notes and the keyboard, for example, and boom! A keyboard with beautiful specularity.

Nicholas
Posts: 12440

Post by Nicholas » 04-02-16 8:07 am

Korados wrote:... just like it did when the Jamboxx option was enabled. But I disabled it, so I guess it's because of OpenGL...
Do you have it disabled for your dev version, too? Remember that dev previews store their data in the SynthesiaDev data folder which is next to the usual Synthesia data folder. You may have to disable it again.

Locked