獲得蛋白質的晶體結構的第一個瓶頸,就是制備大量純化的蛋白質(>10mg),其濃度通常在10mg/ml以上,并以此為基礎進行結晶條件的篩選。運用重組基因的技術,將特定基因以選殖(clone)的方式嵌入表現載體(expression vector)內,此一載體通常具有易于調控的特性。之后再將帶有特定基因的載體送入可快速生長的菌體中,如大腸桿菌(Escherichia coli),在菌體快速生長的同時,也大量生產表現載體上的基因所解譯出之蛋白質。一般而言純度越高的蛋白質比較有機會形成晶體,因此純化蛋白質的步驟就成為一個重要的決定因素。
在取得高純度的蛋白質溶液后,接下來就是晶體的培養。蛋白質晶體與其他化合物晶體的形成類似,是在飽和溶液中慢慢產生的,每一種蛋白質養晶的條件皆有所差異,影響晶體形成的變量很多,包含化學上的變量,如酸堿度、沉淀劑種類、離子濃度、蛋白質濃度等;物理上的變數,如溶液達成過飽和狀態的速率、溫度等;及生化上的變數,如蛋白質所需的金屬離子或抑制劑、蛋白質的聚合狀態、等電點等,皆是養晶時的測試條件。截至目前為止,并無一套理論可以預測結晶的條件,所以必須不斷測試各種養晶溶液的組合后,才可能得到一顆完美的單一晶體。
蛋白質晶體的培養,通常是利用氣相擴散法(Vapor Diffusion Method)的原理來達成;也就是將含有高濃度的蛋白質(10~50mg/ml)溶液加入適當的溶劑,慢慢降低蛋白質的溶解度,使其接近自發性的沈淀狀態時,蛋白質分子將在整齊的堆棧下形成晶體。舉例來說,我們將蛋白質溶于低濃度(~1.0M)的硫酸銨溶液中,將它放置于一密閉含有高濃度(~2.0M)硫酸銨溶液的容器中,由氣相平衡,可以緩慢提高蛋白質溶液中硫酸銨的濃度,進而達成結晶的目的。
蛋白質晶體在外觀上與其他晶體并無明顯不同之處,但在晶體的內部,卻有很大的差異。一般而言,蛋白質晶體除了蛋白質分子外,其他的空間則充滿約40%至60%之間的水溶液,其液態的成分不僅使晶體易碎,也容易使蛋白質分子在晶格排列上有不規則的情形出現,造成晶體處理時的困難及繞射數據上的搜集不易等缺點。但也由于高含水量的特性,讓蛋白質分子在晶體內與水溶液中的狀態,極為相似。所以由晶體所解出的蛋白質結構,基本上可視為自然狀態下的結構。