3258s are single LED per chip whereas a 5050 has 3 LEDs per 5050 so a single RGB 5050 can produce any color.
The 5050 can be all the same color or RGB or whatever.
The 5050 RGB LED strips have a controller chip per 5050 which can be programmed to set its 5050 color & intensity (hence flashing etc).
The controller chips are daisy chained and addressed by number/sequence from the end of the string. (The "end" is self configuring so you can cut the strips anywhere, typically leaving groups of 3 5050s with controllers for a 12V strip (the strips should have (dashed?) lines where they can be cut.)
Last time I looked there were 2 popular controller chips. You have to match the strip type to the controller.
One of them was considered difficult because of its variable length data string depending on what instruction was sent but IMO that is merely a software issue fir uPC chips - ie, defining a look up table or using "variable handshaking" etc; both of which are subroutined or called. Besides, there didn't seem to be an issue judging by the number of PICAXE, Arduino, etc projects that used either controller-chip type.
Whereas each individual 5050 LED can produce any color, 3258s would require 3 adjacent LEDs each displaying its particular intensity to make up the overall (3 LED) color.
I didn't look at 3528s since I was interested in individual LED colors - eg, a 3rd stop/tail 5050 RGB strip that could include amber flashers, or amber chasing flashers, or white rear lighting etc. But I'd assume their "master" controller that plugs into the strip takes care of the "group by 3" 3528s in a similar fashion to the 5050 controllers that do the same but where each
group of 3 is in the single 5050 chip.
AFAIRecall, when I looked there was no "ready built" controller that handled both 5050 strip types. I'd expect similar for 3528 RGB controllers, but AFAIAmConcerned, that is merely a programming issue.
I'd google for controllers that do what you want and suit the RGB LED strip type you have.
As for power/current, that's also a case of matching. Each LED in a 5050 might be rated as 50mA, so for one channel (R, G or B) with 5cm per 3 5050s (60/m or 300/5m etc) that's 60 x 50mA = 3A per meter.
Of course the 5050s can be lower current or maybe higher current (per individual 5050 "internal" LED).
And strips can have different 5050 spacings.
And just because a LED is rated at whatever current does not mean you have to drive it that hard - eg, if limited to 10mA run the 50mA LED at 20% intensity/brightness.
(I doubt you'd have to check that the controller's "intensity" is proportional to current. To do otherwise would mean matching the controller to a specific manufacture of 5050s etc else programming of intensity versus current data/curves. I'd expect the simple linear "current proportional to intensity" is assumed and if there is a non-linearity, the programmer changes the relevant
programmed intensity.