At first, the problem to solve is of purely categorical nature and does involve neither injective nor flabby sheaves: Given any left-exact functor ${\mathcal F}:{\mathscr A}\to{\mathscr B}$ between abelian categories, define a measure of failure of its right exactness.
One attempt to formalize this is provided by the notion of $\delta$-functors: A $\delta$-functor is an ${\mathbb N}_{\geq 0}$-indexed family of additive functors ${\mathcal T}^i: {\mathscr A}\to{\mathscr B}$ with ${\mathcal T}^0\cong{\mathcal F}$ together with, for any short exact sequence ${\mathscr E}: 0\to X\to Y\to Z\to 0$ in ${\mathcal A}$ and any $i\geq 0$, a connecting morphism $\delta^i({\mathscr E}): {\mathcal T}^i(Z)\to{\mathcal T}^{i+1}(X)$ such that the following long sequence in ${\mathscr B}$ is exact:
$$...\to {\mathcal T}^{i-1}(Z)\to{\mathcal T}^i(X)\to{\mathcal T}^i(Y)\to{\mathcal T}^i(Z)\to{\mathcal T}^{i+1}(X)\to ...$$
Then the ${\mathcal T}^i$ with $i>0$ can be thought of as compensating for the failure of right-exactness of ${\mathcal T}^0$.
The questions of existence and uniqueness arise.
For uniqueness, one has the notion of universality: A $\delta$-functor ${\mathcal T}^{\ast}$ is universal if for any other $\delta$-functor ${\mathcal S}^i$ any natural transformation ${\mathcal T}^0\to{\mathcal S}^0$ can uniquely be extended to a morphism of $\delta$-functors ${\mathcal T}\to{\mathcal S}$. Fixing ${\mathcal T}^0$, universal $\delta$-functors are unique up to unique isomorphism, the most important criterion for universality is then the following: If ${\mathcal T}$ is effecable in the sense that for any $X\in{\mathscr A}$ there exists a monomorphism $X\hookrightarrow I$ such that ${\mathcal T}^i(I)=0$ for all $i>0$, then ${\mathcal T}^{\ast}$ is universal.
What about existence of an effecable $\delta$-functor?
Firstly think about which objects $I\in{\mathscr A}$ are candidates for the required ones satisfying ${\mathcal T}^i(I)=0$ for all $i>0$. Consider ${\mathcal T}^1$ first: If $0\to I\to A\to B\to 0$ is a short exact sequence, then ${\mathcal T}^1(I)$ should measure the failure of right-exactness of $0\to {\mathcal T}^0 I\to {\mathcal T}^0 A\to {\mathcal T}^0 B\to 0$ - in particular, it might/should vanish whenever this sequence is already exact? So say that $I$ is ${\mathcal T}^0$-preacyclic (not standard terminology, but I need to distinguish it from the standard notion of ${\mathcal T}^0$-acyclicity which is stronger) if any short exact sequence $0\to I\to A\to B\to 0$ stays exact under application of ${\mathcal T}^0$. Any ${\mathscr A}$-injective object is ${\mathcal T}^0$-preacyclic: any short exact sequence $0\to I\to A\to B\to 0$ with $I$ injective is split exact, and split exactness is preserved under any additive functor. However, particular functors may admit more preacyclic objects - for example, flabby sheaves are preacyclic for the global sections functor.
The ${\mathcal T}^0$-preacyclic objects are those you intuitively would like the functors ${\mathcal T}^i, i>0$ to vanish at (this will only be true for the stronger notion of ${\mathcal T}^0$-acyclic objects in the end, but at the moment, that's the idea). Interestingly, it turns out that this already forces the definition of ${\mathcal T}^i$ completely, and the argument for this is usually called dimension shifting: If you already defined ${\mathcal T}^0,...,{\mathcal T}^n$, and if $X\in{\mathscr A}$ is given, pick any $0\to X\to I\to X^{\prime}\to 0$ with $I$ a preacyclic object. Then the long exact sequences yields the isomorphism ${\mathcal T}^{n+1} X\cong\text{coker}\left({\mathcal T}^n I\to {\mathcal T}^n X^{\prime}\right)$, so provided you already defined ${\mathcal T}^n$ and you know which objects are to be preacyclic, the definition of ${\mathcal T}^{n+1}$ is forced.
All this was a bit sloppy but hopefully motivates, in the end, the idea of defining ${\mathcal T}^{\ast}$ through the choice of ${\mathcal T}^0$-preacyclic resolutions. It turns out however that in order to make this work one cannot work with arbitrary ${\mathcal T}^0$-preacyclic resolutions but instead has to use ${\mathscr S}$-resolutions, where ${\mathscr S}$ is any class of ${\mathcal T}^0$-preacyclic objects which additionally has the following properties:
Any object admits an embedding into an object in ${\mathscr S}$.
For $0\to X\to Y\to Z\to 0$ with $X,Y\in{\mathscr S}$, also $Z\in{\mathscr S}$.
${\mathscr S}$ is closed under summands.
If ${\mathscr A}$ has enough injectives, you can always choose ${\mathscr S}$ to be the class of injective objects, but in case of ${\mathcal T}^0 = \Gamma$ the global sections functor, you can also take for ${\mathscr S}$ the class of flabby sheaves.
A posteriori, you learn that there is even a largest class ${\mathscr S}$ with the above properties, namely the class of those $I\in{\mathscr A}$ satisfying ${\mathcal T}^i(I)=0$ for all $i>0$, and are called ${\mathcal T}^0$-acyclic. However, even without knowing ${\mathcal T}^{\ast}$ in advance you can prove acyclicity of objects by showing that they belong to a class ${\mathscr S}$ with the properties above.
From my experience, it is common to define ${\mathcal T}^i$ through injective resolutions and to show then that it can be computed using ${\mathscr S}$-resolutions as well. This has the advantage of making it simpler to check the independence of the choice of resolution, since injective resolutions are unique up to homotopy.