There's an excellent article at Babelstone that explains this in great detail. (Kudos to @blunders for already mentioning it.) I'll try to summarize their findings.
Characters show up in several different ways:
- Borrowing directly from Chinese for either meaning or sound.
- Deriving from Chinese by adding or removing a few strokes.
- Borrowing from other Chinese-family scripts.
- Inventing new characters unrelated to those in Chinese.
Which methods were used most depends on the language.
- Khitan is closest to Chinese, either borrowing or deriving most of its characters directly from Chinese.
- Jurchen is a bit further away, deriving its characters from both Khitan and Chinese. Jurchen rarely borrows directly from Chinese.
- Tangut is the furthest -- it looks Chinese-ish, since it uses mostly the same types of strokes, but its characters are not clearly derived from either Chinese or Khitan.
In short, I'd say Khitan is probably the most like Kanji in its relationship to Chinese. Tangut seems more like Hangul: an independent writing system that, because of its place in the Chinese cultural sphere, was made to look more or less Chinese-ish.