The meaning of the each are same, but which one is used in what condition?
The meaning is very close between celui-ci and celui-là. In theory, the first one is for things closer than the second one but this nuance is not always respected. We often just favor celui-là because celui-ci is formal.
The third one (ceci) has a different meaning.
They are close to the English: this one (celui-ci, formal) , that one (celui-là) and this (ceci, formal).
You are missing cela (formal) and ça for the English that.
Ça can be used for either "this" or "that" so C'est quoi, ça ? means What's this? or What's that? depending on the context.
Note that celui is masculine singular and must agree with what it refers to, e.g.:
celui-ci, celle-ci, ceux-ci, celles-ci
On the other hand, ceci, cela and ça are invariable.