but now I'm wondering whether or not adding more is going to put too much strain on the regulator on the board
It will most definately destroy the 3v3 regulator.
As you can see in the schematic the shift regs (and therefore the LED's) are currently powered by the 3.3v rail. This is so as to leave the 5v rail free for analogue inputs coming from potentiometers and therefore keep my analogue and digital circuits seperate
I would not be afraid for voltage dips caused by leds IF the power supply is great enough.
I would recommend to switch the 5V and 3V3 circuits. You can let the potentiometers be connected to 3v3 and power the LEDs by the 5V circuit. But you might as well use 5V for everything. I do recommend to use 100nF or higher capacitors on each analog pin to filter the potentiometers a bit.
ANyway.. I guess I'm just looking for ideas on the best way to acheive this (preferably without using an external power supply)
The Mega does not have a diesel generator on board. What I mean, it does need some form of power therefor I am assuming that you are using the USB port powered by some phone charger or your computer?? (computers typically can supply 500mA on USB ports)
How many mA does each LED take and can the SR provide enough current if all of them are turned on ?
The schematic dictates 330R resistors with 3V3 power supply. Assuming leds with a voltage drop of ~1.3V are used, each led will only consume about 6mA. And 8 x 6mA is less than 70mA.
Take note that if all 320 leds are active, you will be using just under 2A which is not insanely high. I do not know if the USB port can handle this amount of current or that some diode or fuse will be destroyed. (which would be a fixable 'issue')
ALternatively I am considering the idea of trying to do the same thing using fast switching demultiplexers which would cycle through the LED's and therefore mean that a much smaller amount of them are powered on at any given moment.
You can also do this with the shift registers, by doing more frequent updates and let only 1 or 2 leds burn at any time on each SR. However you will gain nothing.
For instance. If you let 1 led burn at any time, you will reduce power consumption up to 8 times, but your led will only shine at 1/8 of the time which will decrease the light output.
You can ofcourse increase the current with lower resistor values but it is essentially undoing that what you are trying to achieve.
With 6mA per led you will be fine with the 74hc595, but if you want more light you simply need more current and more current means either more or differenct IC's. You can for instance use ULN2803 chips and use the full 20mA per led.
Kind regards,
Bas