added porosity, but it still neds tweaking