Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
FatCow
Apr 22, 2002
I MAP THE FUCK OUT OF PEOPLE

feld posted:

That looks curiously like RRDTool's graphs... the fonts, layout, everything...

It could almost be Cacti with a custom theme......

ZenOSS actually. It also uses RRDtool on the backside I'm also working on another front end for the data that shows statistics either by NPA or LATA/OCN through RRDtool graphs. Right now we don't have the call volume to make it statistically significant though. :(

Adbot
ADBOT LOVES YOU

duck monster
Dec 15, 2004

Avenging Dentist posted:

My stuff isn't nearly as cool as other people's (yet!), but I'm working on a Subversion repository browser for Windows that looks like a network drive (god I hate COM programming). It doesn't do anything with Subversion yet, but you can browse an infinite set of useless directories!



theres a dot net version of fuse. If its anything like the linux version, its probably awesome.

biznatchio
Mar 31, 2001


Buglord

duck monster posted:

theres a dot net version of fuse. If its anything like the linux version, its probably awesome.

I've heard of a couple different bindings to FUSE for Mono on Linux; but nothing to implement a userspace filesystem in Windows. What were you referring to here?

Doublethink
Sep 11, 2001

Umpossible my dear fellow, simply umpossible


I am the only one who's been coding this drat thing. It only gets updated when someone needs a new function and generally they need it right away (within a few hours typically).

It keeps morphing and UI has always been way down list of priorities. It's only used in house so it is full of profanity and inside jokes.

csammis
Aug 26, 2003

Mental Institution

Doublethink posted:



I am the only one who's been coding this drat thing. It only gets updated when someone needs a new function and generally they need it right away (within a few hours typically).

It keeps morphing and UI has always been way down list of priorities. It's only used in house so it is full of profanity and inside jokes.

What is it? :confused:

Doublethink
Sep 11, 2001

Umpossible my dear fellow, simply umpossible

csammis posted:

What is it? :confused:

It's a set of tools to manipulate and fix data from an e-discovery / document review application we use. Most of the main page UI is just project and table browsing. The rapper icons are various tools to manipulate data, George bush allows you to run raw SQL against the selected table, Cheney deletes projects, the eightball is our estimate tool, the hardrive launches our data check-in application.

edit before i get nerd raged, my primary job is NOT software development, I just happen to be the only one in my company that has any skills with programming.

Doublethink fucked around with this message at 17:29 on May 15, 2008

Nomikos
Dec 31, 2003

I got sick of how all available music-visualization plugins had really poor spectrograms, so I made my own.


This is someone playing the piano and singing.


This is tremolo at the end of a guitar solo.

Unfortunately glDrawPixels() takes up an ungodly amount of CPU time for some reason; at the size above it's already using 100% of one core. Still trying to find a good way to draw lots of pixels to the screen very fast...

It's written in Haskell and uses PortAudio for the backend. For the screenshots above I connected it to the output of Amarok using JACK.

esp
Jul 13, 2003
I'm developing a very simple charting library in .Net. There's probably a billion of those already, so I'm only doing it for the fun.

It's all plain c#, supports a bunch of different chart types, and a has a few features like:
- "Understands" equations. Adding new EquationItem("x/pi + tan(cos(x)") adds a new graph.
- Automatic fitting (not having to set a x & y range)
- Automatically picks matching(somewhat) colors if you don't specify how to color stuff. Uses a similar solution to that of http://colorblender.com/

A sample of stuff it can chart (without matched colors..)


Here's a sample of what i used it for today. This image shows some tax-data for ~60 people. X-axis is year of birth(1940->1990) and Y-axis is income for 2006.


The same data colored for gender (each vertical step is $10000).

heeen
May 14, 2005

CAT NEVER STOPS

Nomikos posted:

I got sick of how all available music-visualization plugins had really poor spectrograms, so I made my own.


This is someone playing the piano and singing.


This is tremolo at the end of a guitar solo.

Unfortunately glDrawPixels() takes up an ungodly amount of CPU time for some reason; at the size above it's already using 100% of one core. Still trying to find a good way to draw lots of pixels to the screen very fast...

It's written in Haskell and uses PortAudio for the backend. For the screenshots above I connected it to the output of Amarok using JACK.
looks like writing your values into a 1D-texture and doing the scrolling in a fragment shader or something like that might be a possibility.

Paradoxish
Dec 19, 2003

Will you stop going crazy in there?

Madox posted:

That's all my own UI library and texture. It's still inefficient in dealing with text, but I think that's mostly DirectX's fault :)

If you're using ID3DXFont it's going to be slow and there's just no way around it. I spent a while working on my own XML/Lua scriptable UI system for a game project that I'm working on and after a while I came to the conclusion that ID3DXFont was just far too slow to be usable for anything text-heavy. I ended up writing my own simple bitmap font renderer that uses FreeType to generate glyphs and the improvement is absolutely ridiculous. I got something like a 20x decrease in frametime when displaying large amounts of text.

I'd post some screenshots of the project it's a part of, but it's fairly unremarkable looking at the moment since I'm saving most of the display-related code for later. :(

Paradoxish fucked around with this message at 01:14 on May 16, 2008

Hubis
May 18, 2003

Boy, I wish we had one of those doomsday machines...

Nomikos posted:

I got sick of how all available music-visualization plugins had really poor spectrograms, so I made my own.


This is someone playing the piano and singing.


This is tremolo at the end of a guitar solo.

Unfortunately glDrawPixels() takes up an ungodly amount of CPU time for some reason; at the size above it's already using 100% of one core. Still trying to find a good way to draw lots of pixels to the screen very fast...

It's written in Haskell and uses PortAudio for the backend. For the screenshots above I connected it to the output of Amarok using JACK.
glDrawPixels is almost certainly the wrong way to do it, since it doesn't really take advantage of ANY hardware acceleration :) There are a lot of "better" ways of doing it, ranging from running all the processes in a fragment program/using render targets to just putting your data in vertices and sending a huge stream of verts to the card instead of calling drawPixels.

deedee megadoodoo
Sep 28, 2000
Two roads diverged in a wood, and I, I took the one to Flavortown, and that has made all the difference.


I'm working on linux full time and I can't even remember the last time I wrote something with a resepctable GUI. I avoid captive interfaces like the plague nowadays so I can pipe output wherever. The only thing user friendly about the scripts and programs I write now is --help.

My latest projects include a swatch-like logfile analyzer (the performance hit for swatch is TERRIBLE so my script runs either in cron or as part of logrotate) and a multi-threaded website validation tool that performs scripted actions against websites (think jmeter/gomez hybrid).

Madox
Oct 25, 2004
Recedite, plebes!

Paradoxish posted:

If you're using ID3DXFont it's going to be slow and there's just no way around it. I spent a while working on my own XML/Lua scriptable UI system for a game project that I'm working on and after a while I came to the conclusion that ID3DXFont was just far too slow to be usable for anything text-heavy. I ended up writing my own simple bitmap font renderer that uses FreeType to generate glyphs and the improvement is absolutely ridiculous. I got something like a 20x decrease in frametime when displaying large amounts of text.

I'd post some screenshots of the project it's a part of, but it's fairly unremarkable looking at the moment since I'm saving most of the display-related code for later. :(

Ya I'm using ID3DXFont mostly because I'm lazy. The biggest benefit of it is that it does word wrapping and clipping for me without me caring about font metrics, but it prevents me from firing out the entire UI in a single call, because I have to stop and make seperate calls to font->DrawText().

Nomikos
Dec 31, 2003

Thanks for the suggestions about glDrawPixel alternatives. From my initial look at the GLSL tutorials, synchronizing the scrolling action between my program and the shader sounds difficult so I'll probably try the enormous-stream-of-vertices idea first.

I also came across the Wikipedia article on wavelet transforms as an alternative to the Fourier transform, providing better frequency resolution without sacrificing time resolution. "Scalogram" instead of spectrogram. Once I free up some CPU time from drawing this should be a fun area to investigate :)

Hubis
May 18, 2003

Boy, I wish we had one of those doomsday machines...

Nomikos posted:

Thanks for the suggestions about glDrawPixel alternatives. From my initial look at the GLSL tutorials, synchronizing the scrolling action between my program and the shader sounds difficult so I'll probably try the enormous-stream-of-vertices idea first.

I also came across the Wikipedia article on wavelet transforms as an alternative to the Fourier transform, providing better frequency resolution without sacrificing time resolution. "Scalogram" instead of spectrogram. Once I free up some CPU time from drawing this should be a fun area to investigate :)

a fragment shader is probably the "right" way to go, but it's definitely trickier. If you want to give it a try, feel free to PM me if you've got any questions.

For the "Enormous Stream of Vertices/Points" version, make sure you use the glDrawArrays or glDrawElements version; you won't save a lot by issuing 10,000 glVertex() calls each frame

Wuen Ping
Feb 2, 2007
This is an open source 4X game project started a while ago because Master of Orion 3 sucked so very hard. I'm the main developer. These shots are from the 3D combat system, which is still under heavy development (it's essentially nonfunctional so far, but looks pretty).





Hubis
May 18, 2003

Boy, I wish we had one of those doomsday machines...

Wuen Ping posted:

This is an open source 4X game project started a while ago because Master of Orion 3 sucked so very hard. I'm the main developer. These shots are from the 3D combat system, which is still under heavy development (it's essentially nonfunctional so far, but looks pretty).







Very neat. I judge from the image names that you're using OGRE as your base engine?
If you don't mind me asking, what algorithm are you using for the sky color of the planets?

heeen
May 14, 2005

CAT NEVER STOPS

Nomikos posted:

Thanks for the suggestions about glDrawPixel alternatives. From my initial look at the GLSL tutorials, synchronizing the scrolling action between my program and the shader sounds difficult so I'll probably try the enormous-stream-of-vertices idea first.
You can just send the current "time" of your program to the shader via a uniform float variable.
The way I'd implement this is:

Render into a texture, using an orthographic projection:
* a thin quad with the new column of data all the way on the left
* next to it, filling the rest of the frustum a quad with the old data, change the texture coordinates on the right to cut off the oldest column of data

render to your main view:
* a quad with the texture created above

You don't even need a fragment shader. Make sure to not use texutre filtering in the first pass.

Wuen Ping
Feb 2, 2007

Nuke Mexico posted:

Very neat. I judge from the image names that you're using OGRE as your base engine?
If you don't mind me asking, what algorithm are you using for the sky color of the planets?

Yes, we are using Ogre. I was very resistant to using it at first, because when I first looked at it, it did stupid things like reinvent a substantial portion of the STL. Fortunately, those kinds of defects have been remedied, and now I can go on record as saying it is fantastic to work with.

If "sky color" means the atmosphere glow at the edge of each planet, I did this:

1) Rendered the planet surface.
2) Rendered the atmosphere as a second sphere at the same location.
3) Mutated the atmosphere sphere's vertices to envelope the planet surface by some small amount (4% in my case).
4) Calculated the dot product corresponding to the angle from the center to the edge of the planet from the camera.
5) Calculated similar dot products for the outer and inner angular extents of the atmosphere, and the angular extent of the current vertex.
6) Calculated the coefficient of sun-glow, based on the angle the sun and camera make with the current vertex.
7) Interpolated the color based on the current vertex's dot product's position between the inner and outer angular extent dot products, then modulated the result by the sun-glow coefficient.

You can look at the shader source here (it's GPL'd).

You're looking for planet_atmosphere.vert and planet_atmosphere.frag.

Zagrod
Jun 26, 2005

fiyah fiyah fiyah
Clapping Larry

Wuen Ping posted:

:words:

That looks very cool, how far are you into the project?

Alex007
Jul 8, 2004

I'm coding a web-based MMO forthe Urban Dead goons who are sick of Urban Dead :)

I really wanted to clean up the UI, Urban Dead sucks balls on this, there's a dozen forms on-screen and you always have to search when you want to do something.

I decided to go a bit Web 2.0-style and I'm using javascript popup menus. Plyaers can interact with their environment by clicking on elements showing a drop-down arrow, and a menu pops up.

I'm not sure how standard it is, but it makes a really clean UI and is really easy to use, compared to UD.

Main game screen:



Inventory screen, with popup activated:



Thread: http://forums.somethingawful.com/showthread.php?threadid=2819930

Digital Spaghetti
Jul 8, 2007
I never gave a reach-around to a spider monkey while reciting the Pledge of Alligence.


A pretty lovely shot, but it's the new release of my password strength meter. I've been watching Doug Crockford's videos on JavaScript, and this plugin represents re-writing to his specifications.

I really like how now I have each validation rule as a lamda's, and a method to easily add your own methods, making the plugin really dynamic. For example it's really easy to add an ajax dictionary validation rule to check the word is not a common word.

It's pretty much my only visual thing to show at the moment, although I have another couple of things coming up in the pipeline. You can try a demo here

Zakalwe
May 12, 2002

Wanted For:
  • Terrorism
  • Kidnapping
  • Poor Taste
  • Unlawful Carnal Gopher Knowledge

j4cbo posted:



My kernel. :clint:

The design is basically UNIX-like, with the usual protected preemptive multitasking and fork(), exec(), wait(). There are a bit over twenty system calls total. I wrote it for an OS class, but then added some extra stuff like COW and SMP support. It's around 5700 lines of mostly C, some asm.

This summer's project: scheduler activations! :suicide:

I wrote an OS kernel, created a tiny libc and ported some minor unix programs to it for my 4th year CS project. I'm warning you now, a kernel is NEVER done. You'll always be adding "one more feature".

Wuen Ping
Feb 2, 2007

Zagrod posted:

That looks very cool, how far are you into the project?

We have a roadmap that has about 8 major milestones in it. We're on the 4th and biggest right now, the combat system. We've been working on the project about 3 and a half years.

Zagrod
Jun 26, 2005

fiyah fiyah fiyah
Clapping Larry
I'm going to patiently wait, because I too think that MoO3 was a crime against humanity

OneEightHundred
Feb 28, 2008

Soon, we will be unstoppable!
I decided the best way to make a Battlefield-ish game was to start with the Quake 3 engine and make a few minor modifications:



Vertex/pixel shader support, new material system, radiosity (which uses GPU acceleration to compile), directional lightmaps, terrain, skeletal models, load-time asset compilation, blah blah...

Oh yeah, and I suck at recruiting so I'm stuck in tech demo hell. :suicide:

OneEightHundred fucked around with this message at 03:55 on May 19, 2008

Maniaman
Mar 3, 2006
Digital Picture Frame/Clock/Weather Machine/News Machine/Calendar using WPF and C#.

These images are just the mockups I did in Photoshop. Current build isn't very exciting, just the window background, power button and the bars on the top and bottom.

ashgromnies
Jun 19, 2004

OneEightHundred posted:

I decided the best way to make a Battlefield-ish game was to start with the Quake 3 engine and make a few minor modifications:



Vertex/pixel shader support, new material system, radiosity (which uses GPU acceleration to compile), directional lightmaps, terrain, skeletal models, load-time asset compilation, blah blah...

Oh yeah, and I suck at recruiting so I'm stuck in tech demo hell. :suicide:

How do you learn to do stuff like vertex shaders? I assume there's an "accepted" way of doing it. I'm really curious about all this neat graphics programming after spending years in Linux command-line hell.

Scaevolus
Apr 16, 2007

ashgromnies posted:

How do you learn to do stuff like vertex shaders? I assume there's an "accepted" way of doing it. I'm really curious about all this neat graphics programming after spending years in Linux command-line hell.

The Orange Book and the GPU Gems series are good places to start.

OneEightHundred
Feb 28, 2008

Soon, we will be unstoppable!

ashgromnies posted:

How do you learn to do stuff like vertex shaders? I assume there's an "accepted" way of doing it. I'm really curious about all this neat graphics programming after spending years in Linux command-line hell.
Considering I'm self-taught on almost everything (plus exchanging ideas with other people who are better than me) I couldn't tell you the accepted way.

If anything I'd say the easiest way is to "just use them." They're not that hard to pick up on as long as you understand what they do, understand the math behind the operations you already do, and understand how the rendering pipeline works. OpenGL in particular makes it dirt easy, it's not much harder in D3D except you have to calculate the projection matrix yourself and they'll try tempting you to do everything with their lovely FX framework.

There are a metric shitload of samples out there, if anything I'd recommend downloading the Cg toolkit because it has a ton of useful samples (Cg is almost identical to HLSL and 90% the same as GLSL), more of the difficulty comes in understanding how processes like normalmapping and those stupid water shaders everyone has nerdgasms over work than understanding how to use them in place of existing systems.

I haven't read GPU Gems but I've seen a ton of good code snippets with it cited as the source so if there's one book to pick up on the subject, that's probably going to be it.

If you want to get out of command-line hell then the best place to start would be pick up GLUT or SDL. GLUT is easier to get in to, SDL scales better.

OneEightHundred fucked around with this message at 19:15 on May 19, 2008

Led
Jan 30, 2004
Sjoebiedoewap


I wanted to learn Java, so I had to think of something that would be useful to someone.
Hence I present : SuperCheckMate.
SuperCheckMate is my Magnum Opus, it will definitely end my life.

Basicly it's something like an online virus-scanner, only it doesn't scan your puter for viruses but for pr0n, and reports it's findings.
...So your girlfriend has evidence you've downloaded pictures of squid fisting midgets.

Why ?
Because no one else did.
(And because this way, I could make sure that the leading program doing this has a backdoor so it wont report anything on my own PC)

Led fucked around with this message at 01:58 on May 25, 2008

Crash Bandicoot
Feb 23, 2007

by T. Fine
That reminds me of various IRC scripts and apps which scanned for filenames of known cheats. It was always amusing to see some player or another start spouting confessions against his will, having run the script by mistake.

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense

Alex007 posted:

I'm coding a web-based MMO forthe Urban Dead goons who are sick of Urban Dead :)

I really wanted to clean up the UI, Urban Dead sucks balls on this, there's a dozen forms on-screen and you always have to search when you want to do something.

I decided to go a bit Web 2.0-style and I'm using javascript popup menus. Plyaers can interact with their environment by clicking on elements showing a drop-down arrow, and a menu pops up.

I'm not sure how standard it is, but it makes a really clean UI and is really easy to use, compared to UD.

Actually I find your interface harder to discern places that I can click on stuff, as well as having to search for which thing that I should click on to do something. Additionally UD is currently using a better font than you are which is easier to read.

I suggest you get a small test audience to try it out and give you a more detailed review of the progress.

skidooer
Aug 6, 2001
Not much programming behind this project, but it's been fun to get away from the code and do some designing for once.

Nolgthorn
Jan 30, 2001

The pendulum of the mind alternates between sense and nonsense
It's a bit strange the writing on the chalkboard has a drop shadow, I like it though.

skidooer
Aug 6, 2001

Nolgthorn posted:

It's a bit strange the writing on the chalkboard has a drop shadow
Yeah, I didn't intend for it to look so much like a shadow, just a bit of black to give the white text some definition. I cleaned it up in a later revision.

savetheclocktower
Sep 23, 2004

You wait and see, Mr. Caruthers. I will be president! I'll be the most powerful president in the history of America. And I'm gonna clean up this country!


Working on a documentation template for Prototype and PDoc (inline documentation for JavaScript).

Dromio
Oct 16, 2002
Sleeper


This is my hobby project, a MPD client for windows mobile. It doesn't actually PLAY music, it just controls the server that does the playing. It also launches a real music player pointed at the shoutcast stream generated by my server. My music is available to me anywhere my phone gets EVDO or wifi access.

The UI gets album art from amazon and has those nifty "kinetic" scrolling lists, where you flick your finger across the screen to make the list fly in that direction. I still want to do more to the UI, like caching album thumbnails and using them within the lists.

Dromio fucked around with this message at 14:53 on May 27, 2008

MrMoo
Sep 14, 2000

savetheclocktower posted:



Working on a documentation template for Prototype and PDoc (inline documentation for JavaScript).

That's quite pretty, it would be nice to group categories together like Apple. Unfortunately I don't have the imagination to create a unique style set:

Adbot
ADBOT LOVES YOU

vanjalolz
Oct 31, 2006

Ha Ha Ha HaHa Ha

Dromio posted:

Pocket mp3 controller
Ahh I've been meaning to make one of these things for over a year, even bought an N770 Touchscreen tablet to put it on so I could control my HTPC, but I just never had the time :(

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply