The PBL process is a self-directed learning process. In the light of self-directed learning theory, the author argues that computational mechanisms can be used to support selfdirected learning for PBL groups in virtual learning environments. In this paper, an approach to the support of self-directed learning is proposed. This approach supports self-directed learning in a virtual PBL environment in two ways. Firstly, the shared workspaces together with their accompanying tools and documents allow students to actively engage in collaborative, creative, and unstructured PBL activities. Secondly, the process support tool helps students to organize, execute, and coordinate structured parts of PBL processes. This approach has been adopted to develop our prototype system CROCODILE.