• 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7
[RELEASE] - Vortex for Win32
#61
Want to share my first Vortex preset:

SpectrumCrown Vortex preset
Reply
#62
To MrC,

Can you check if this is a Vortex bug?
In my preset (see above post) I use GetSpec(int) to get the spectrum, the wiki page did not specify what are the valid values for the argument, so I tried several ranges and decided on 1-256, but the values returned by the function were so small they did not show on screen, I had to multiply the returned values by 15,000 to get a decent range.

I checked afterwards other presets using GetSpec(), GetSpecLeft(), GetSpecRight(), WaveLeft(), WaveRight() and on all of them I saw the same behavior, after edit them and scaled the functions result by 15,000 I saw the presets come alive on screen. On SpectrumCylinder I even had to scale by 85,000 to see something interesting.

I am using Win7 32 bit with Gotham 13.1 and the default Vortex that came with that installation.



EDIT: The HamsterMatic preset has a gfxColour() call, in line 99, with negative alpha value which actually makes the whole screen of the same color. Replacing the alpha formula

gfxColour(1.0f, 1.0f, 1.0f, 0.0f-((x+btime)/8.0f));
for
gfxColour(1.0f, 1.0f, 1.0f, 1.0f-((x+btime)/8.0f));

I think fixes it.
Reply
#63
I made another preset, I am sharing the folder in google drive so any future additions are visible and downloadable:

Ilomambo Vortex Presets
Reply
#64
feel free to open PR's on github. One for the bugfix and another one for the new presets.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#65
A quick how-to for creating PRs can be found here
https://github.com/xbmc/xbmc/blob/master...IBUTING.md

thx Smile
Read/follow the forum rules.
For troubleshooting and bug reporting, read this first
Interested in seeing some YouTube videos about Kodi? Go here and subscribe
Reply
#66
(2014-08-05, 09:58)WiSo Wrote: feel free to open PR's on github. One for the bugfix and another one for the new presets.

To tell you the truth I am little bit weary of issuing PR's because I have no experience in collaborative projects.

I would like to know if I should expect some response from MrC vetting my findings, or is he completely out of the picture?
Reply
#67
A wild MrC appears. Big Grin

The version of Vortex that comes with XBMC is years out of date and doesn't work properly. It's audio code is still expecting ints whereas XBMC changed to floats back in April 2012. I am pretty sure I fixed this and a bunch of other issues but I never updated the code in Git as I was just releasing the binary separately. I should probably get around to fixing that if I can find where I put the code.

This will explain why your audio samples are so small and you are having to multiply them by 15,000.

MrC
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#68
Many Thanks, MrC

Please check also that the function gfxSphere() in the current release does not really put a sphere on screen, but only some triangles of the sphere surface and each of a different color, regardless of the texture set. Also the Tunnel type does not compile, I hope your last version does include it.

If I may ask some questions that I encounter while playing with the presets:

* Is there a log somewhere to be used for debugger? (I saw there is a debugging console in the source code, but no idea if it can be used by the presets)
* How can one test a transition? Presets can be locked, but transitions cannot even be selected manually.
* What is an annotation file? (saw it in the source code)
* I tried using a map and rendering a rotating cube into it, then continued to Render() and then to use the map as texture on other objects, but the rotation I applied on the map rendering affects also the rest of the objects. I tried to Isolate the new objects with gfxPushMatrix() and gfxPopMatrix(), but it did not work for me.
* How can one create a tapered cube?

The reason I like Vortex better than Milkdrop is that I can finally understand what is going on and can really "design" a preset as I envision it in my mind.
We should find a way to translate other presets, from other visualizations into Vortex too,
I understand from your post that you moved on from Vortex, but if sometime you come back to it, I do have some inputs.

(2014-08-06, 23:15)MrC Wrote: ... but I never updated the code in Git as I was just releasing the binary separately...

Is there a more updated binary for XBMC Win32 available, where can I get it?
Reply
#69
your source has gpl headers this is elan level of do-not-get-it. didnt think i would see that again.

i have the binary i demand the sources under the terms you have given in the license! yesterday.
Reply
#70
Big discovery! I was browsing the github source code for Vortex and found the following interesting lines:

Code:
char g_TexturePath[ 512 ] = "special://xbmc/addons/visualization.vortex/resources/Textures/";
char g_PresetPath[ 512 ] = "special://xbmc/addons/visualization.vortex/resources/Presets/";
char g_TransitionPath[ 512 ] = "special://xbmc//addons/visualization.vortex/resources/Transitions/";
char g_AnnouncePath[ 512 ] = "special://xbmc/addons/visualization.vortex/resources/Announcements/";

Let me explain them to you:
Textures will be fetched from the resources/Textures folder
Presets (.vtx files) will be fetched from the resources/Presets folder
Transitions (.tra files) will be fetched from the resources/Transitions folder
Announcements (.ann files) will be fetched from the resources/Announcements folder

This is weird because the XBMC installation of Vortex does not have a "Transitions" folder, neither an "Announcement" folder, the "Presets" folder contains both .vtx and .tra files.
.ann files are a mistery

So I manually created a "Transitions" folder and copied there the .tra files that were on "Presets" and to my (expected) surprise transitions started to occur in the visualization!!! So even if you enabled transitions in the Vortex settings you were not getting them!!

It seems that the vortex visualization addition to XBMC was half done and in a rush. Mr C already said the code version in github is not the latest, Let's hope the Helix final release includes a proper Vortex visualization with all the components in place.

I will continue to explore the code to see if I can find out what the .ann announcements file are for. I suspect they may have something to do with presenting text in the visualizations.
Reply
#71
Have a look at the top of the second page of this thread for an example of what the announcements do. They are another type of preset which get triggered when a song begins and get rendered over the top of the standard presets. The example one displayed the song name flying across the screen using a 3d font but it doesn't look like that .ann file is in the repository. Also, the 3d font generation code doesn't work with D3D9ex which XBMC started using. You can disable d3dex in the advanced settings but the last time I tried that was > 3 years ago.

Some of your other questions:
* Is there a log somewhere to be used for debugger?
- You can bring up the debug log from the settings menu and you should be able to send strings to it from the presets by using Print("debug text");
* How can one test a transition?
- Easiest way is to only have 1 transition in the transition folder and manually change presets to trigger the transition
* What is an annotation file? (saw it in the source code)
- No idea. Do you mean announcement?
* I tried using a map and rendering a rotating cube into it, then continued to Render() and then to use the map as texture on other objects, but the rotation I applied on the map rendering affects also the rest of the objects. I tried to Isolate the new objects with gfxPushMatrix() and gfxPopMatrix(), but it did not work for me.
- Make sure the push and pop are around the map stuff not the objects you are rendering last.
* How can one create a tapered cube?
- You can't. I was going to add support for loading custom meshes but I never did. Sad

If I ever get round to hooking up my old PC again I'll get the updated source and announcement files uploaded.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#72
Thanks, MrC

I managed to solve most of my doubts (still cannot find an announcement example t test)

I also created a function library which allows me to generate a lot of shapes, including tapered cubes. I will probably put a new preset in my Google drive folder today or tomorrow using those new shapes. Mainly they are not only additional shapes, but they allow some control over the texture rendering on them.

Is there a way to have this library "included" instead of having to copy its code to every preset that uses it?


Image
Reply
#73
I put JumpyOrbit.vtx in my Google Vortex Drive

In the .vtx file is included the complete library I made. It includes functions and classes to make these shapes:
Cylinder
Cone
Sphere
Pyramid
Cube
Wedge

Each function has several prototypes from simple to full parameters and even can be used with the correspondent class, for those who prefer OO coding.
I expect the library to be improved and enhanced with more shapes and functions as we progress with Vortex presets.
Feel free to copy the code and use it in your own custom made presets. Please report problems and post your own enhancements here.

It would be great if we could just have one source for this library and be able to include it in presets by "include" directives. I don't know yet if this is possible. If it is not, and you branch your own version, please add in the header, the date you publish it and were did you copy it from in the first place.

From what I have seen of the Vortex code, it could even be possible to make it part of the source code, with some work, but this is only if MrC is going sometime to go back to improving Vortex.
Reply
#74
Added Doughnut shape to the library (v1.1) in preset file AlbumArtDoughnut.vtx
Reply
#75
The old vortex sources were a leftover from the old xbox days in a non working stat. Since we didn't have any new sources I adapt it to work with the current XBMC but didn't put much effort in it. As said above if you have fixes or stuff to add just PR it and we can discuss it on github. I would assume MrC is fine with it.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
  • 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7

Logout Mark Read Team Forum Stats Members Help
[RELEASE] - Vortex for Win324