생기다 and 나다 are widely used in a variety of contexts. Their usages have little overlap.
Most of these are used as third person verbs. They aren't used for "I" or "you", although there are exceptions.
- 발생하다: to happen or occur.
- 생기다:
1) to form, or to get formed or created; to come into being.
2) to have certain (good, bad) looks.
3) to come into a bad situation.
4) to come one's way (money or other possession).
- 나다:
1) to break out (accident, fire).
2) to give off sensory or emotional effect(light, smell, energy, courage, etc).
3) to yield (crop or other natural or man-made products).
나다 also makes many other verbs, such as 일어나다(=발생하다), 생겨나다, 자라나다, etc.
Examples:
- 동해에서 지진이 발생했다[일어났다]: An earthquake hit in the East sea.
- 손에 물집이 생겼다: A blister has formed on my hand.
- 곳곳에 많은 연구소가 생겨났다: Research institutes popped up everywhere.
- 그 배우는 멋지게 생겼다: That actor looks handsome.
- 회사가 망하게 생겼다: The company has fallen to a precarious condition.
- 예기치 않던 공돈이 생겼다: I came by an unexpected windfall of money.
- 어젯밤에 큰 사고가 났다: A big accident occurred last night.
- 그 말을 듣고 용기가 났다: Regained my courage after hearing that.
- 뭔가 타는 냄새가 난다: It smells like something is burning.
- 이 지방에서 나는 작물들: Crops this region yields.