VirtualSMC.kext (Or FakeSMC.kext) is as aforementioned essential. This kext is what tells macOS "Yes this is a real Mac", emulating the functionality of the SMC on real Mac's. Without it, no Hackintosh.
Lilu.kext - this kext acts as a loader for other kexts and is required for VirtualSMC, Whatevergreen, AppleALC etc. More specifically it can patch kexts, processes and libraries.
Whatevergreen.kext - this kext fixes a lot of GPU related issues.