tricolor single package LEDs do not have same intensity for each color, why?
Simple.  Different colors correspond to different wavelengths of light, shorter wavelengths of light require more energy, producing photons of higher energy requires a larger bandgap in the semiconductor, and a larger bandgap produces a larger voltage drop.  All of this means that Vf of a blue LED is the largest, green is in the middle, and red is the smallest.  The quantum efficiency (current to photons) can also vary.  Our eyes also have different sensitivities to different colors.  

Whenever you need to do something precisely, there is also a tradeoff between designing things to inherently be 'perfect' vs. compensating for non-idealities with some sort of external calibration.  In this case, you don't just have the difference in inherent bandgaps and efficiencies, you will also have variation between LEDs in the same batch.  Unless you are going to bin your LEDs based on efficiency and voltage drop and hope that they age at the same rate, the only realistic solution is to get them roughly in the ballpark and then compensate in the drive circuitry/software.