Comments (8)
This is excellent. I have not come across any other solid documentation of the skin spec. I think you may be creating it.
This had some more info: http://forums.winamp.com/showthread.php?p=951257 but it's mostly based around a sample skin that gives clear outlines about where each sprite starts and stops by giving them well defined outlines.
I hope this can become a pull request before too long. Let me know how I can help, be it with naming or research.
from webamp.
It might be cool to make the skin definition object JSON. That way, if somebody want's to do an implementation in another language, they can share our code. Also, since it's so verbose, I would like to keep it in a separate file.
Thoughts?
from webamp.
Just discovered this: http://wiki.winamp.com/wiki/Creating_Classic_Skins Does not include coordinates, but it does have some information, and should at least help with naming.
from webamp.
!!!!!!!!!!AWESOME!!!!!!!!!!
http://people.xmms2.org/~tru/promoe/Winamp_skinning_tutorial_1_5_0.pdf
Today was a good day :P
Was looking for more explanations of region.txt (which by the way is going to be awful to deal with, but definitely doable...wonder if you could even use css?...not great at css myself but Im sure ive seen something on this) and did a search for "winamp Justin's whacked trans skin" and this popped up!!!
from webamp.
Excellent! This is invaluable. I've added it to the readme here: d24e378
I've also looked a bit into region.txt and while I'm sure it's doable, I don't know how. Like many of the challenges this project presents, I've just let it sit in the back of my mind with the hopes that at some point I'll be on a walk, or in the shower and I'll say "Ah ha! I know how we can solve that problem!".
from webamp.
Typical!
I looked up what I was thinking about css (clip,clip-path,mask) and offcourse not one of them is fully cross browser supportable....urggghhhh.
So worse come to worse your going to have to have a canvas the size of winamp to paint too and one for the mask.
Then paint each and every element onto the canvas with the mask and then cut them out again....bleh!
And when it comes to painting the mask I think it follows the methods of what I was once taught as the clockwise polygon (they have some cool properties), but that was over 20 years ago and I cant remember that stuff. Both my original teachers were demo coders and both tried to drill that into me, but I never did get it ;). Its the holes that are urggghh, otherwise its simple (and considering how much a pain it can be by hand I doubt many did it and most just used that tool (http://www.smspower.org/maxim/Winamp/RegionTxtGenerator) which doesnt make use of the hole stuff). But hopefully canvas might work that way.
from webamp.
Small note...
Still updating that json data, it'll take a while ;).
In case you ever want to see where Im up to or if someone wants to do one of the windows (ha, yeah right, its soooooo boring) Ill keep this updated....
https://gist.github.com/PAEz/a1fd05022cf44b200ca3
I want to be able to generate everything dynamically....data is king!
from webamp.
If we are going to get it merged in, I would love to see this done as a series of small pull requests rather than one giant project, and here's why:
- We can more easily collaborate on the approach taken. If you finish the whole thing, and I don't like some basic assumptions you made, it might be too late to make such a core change, and it may never get merged.
- Small PRs are safer. We might break something, but probably not everything.
- It makes it easier to collaborate on the code if we can define the work needed in smaller pieces.
- It's easier for me to internalize the new code if I get to read it one PR at a time.
- It reduces the possibility of huge merge conflicts if we merge more frequently.
What do you think?
from webamp.
Related Issues (20)
- Adding custom windows? (Visualizer, album art)
- Equalizer Window: ON Button has the wrong dimension (2 pixels too wide) HOT 3
- Webamp centering issues when parent node has a border
- Webamp Next Window Layout API and Custom Skin errors HOT 5
- Possible to set band eq gain?
- windowLayout not honored HOT 1
- Unable to build from source code HOT 1
- Audio does not play on iOS 17 Beta HOT 7
- Pinch to zoom (Mac OS) on the volume slider causes it to slide
- Scrolling on main window & playlist is too fast HOT 1
- Dragging files and double clicking the playlist doesn't always play music HOT 2
- Spectrum Visualizer does not work with Butterchurn? HOT 4
- Webamp skins stacking HOT 2
- Cut a release 1.6.0 (or maybe 2.0?) HOT 1
- Importing Webamp from bundle inside a module
- [Documentation] Could a FAQ be added? HOT 1
- Feature Request: Add an option to override the file open dialog for songs and skins.
- Amiga trackers playback? e.g. MOD, MED, MIDI, IT, S3M, XM, etc... HOT 4
- How to programmatically move Webamp? (through CSS styling?)
- How to prevent Webamp from pre-loading all the tracks in advance? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webamp.